protected function processPhp(Exception $exception)
    {
        /*
         * Fatal Error
         */
        if ($exception instanceof \Symfony\Component\Debug\Exception\FatalErrorException) {
            $check = false;

            // Expected: */modules/cms/classes/CodeParser.php(165) : eval()'d code line 7
            if (strpos($exception->getFile(), 'CodeParser.php')) {
                $check = true;
            }

            // Expected: */storage/cms/cache/39/05/home.htm.php
            if (strpos($exception->getFile(), $this->compoundObject->getFileName() . '.php')) {
                $check = true;
            }

            if (!$check) {
                return false;
            }
        /*
         * Errors occurring the PHP code base class (Cms\Classes\CodeBase)
         */
        }
        else {
            $trace = $exception->getTrace();
            if (isset($trace[1]['class'])) {
                $class = $trace[1]['class'];
                if (!is_subclass_of($class, CodeBase::class)) {
                    return false;
                }
            }
        }

        $this->message = $exception->getMessage();

        // Offset the php, namespace and bracket tags from the generated class.
        $this->line = $exception->getLine() - 3;

        // Find where the php code section begins
        $offsetArray = SectionParser::parseOffset($this->compoundObject->getContent());
        $this->line += $offsetArray['code'];

        // Account for line 0
        $this->line--;

        return true;
    }
protected function processPhp(Exception $exception)
    {
        /*
         * Fatal Error
         */
        if ($exception instanceof \Symfony\Component\Debug\Exception\FatalErrorException) {
            $check = false;

            // Expected: */modules/cms/classes/CodeParser.php(165) : eval()'d code line 7
            if (strpos($exception->getFile(), 'CodeParser.php')) {
                $check = true;
            }

            // Expected: */storage/cms/cache/39/05/home.htm.php
            if (strpos($exception->getFile(), $this->compoundObject->getFileName() . '.php')) {
                $check = true;
            }

            if (!$check) {
                return false;
            }
        /*
         * Errors occurring the PHP code base class (Cms\Classes\CodeBase)
         */
        }
        else {
            $trace = $exception->getTrace();
            if (isset($trace[1]['class'])) {
                $class = $trace[1]['class'];
                if (!is_subclass_of($class, CodeBase::class)) {
                    return false;
                }
            }
        }

        $this->message = $exception->getMessage();

        // Offset the php, namespace and bracket tags from the generated class.
        $this->line = $exception->getLine() - 3;

        // Find where the php code section begins
        $offsetArray = SectionParser::parseOffset($this->compoundObject->getContent());
        $this->line += $offsetArray['code'];

        // Account for line 0
        $this->line--;

        return true;
    }
protected function processPhp ( Exception $ exception ) { /*
         * Fatal Error
         */ if ( $ exception instanceof \ Symfony \ Component \ Debug \ Exception \ FatalErrorException ) { $ check = false ; // Expected: */modules/cms/classes/CodeParser.php(165) : eval()'d code line 7 if ( strpos ( $ exception -> getFile ( ) , 'CodeParser.php' ) ) { $ check = true ; } // Expected: */storage/cms/cache/39/05/home.htm.php if ( strpos ( $ exception -> getFile ( ) , $ this -> compoundObject -> getFileName ( ) . '.php' ) ) { $ check = true ; } if ( ! $ check ) { return false ; } /*
         * Errors occurring the PHP code base class (Cms\Classes\CodeBase)
         */ } else { $ trace = $ exception -> getTrace ( ) ; if ( isset ( $ trace [ 1 ] [ 'class' ] ) ) { $ class = $ trace [ 1 ] [ 'class' ] ; if ( ! is_subclass_of ( $ class , CodeBase :: class ) ) { return false ; } } } $ this -> message = $ exception -> getMessage ( ) ; // Offset the php, namespace and bracket tags from the generated class. $ this -> line = $ exception -> getLine ( ) - 3 ; // Find where the php code section begins $ offsetArray = SectionParser :: parseOffset ( $ this -> compoundObject -> getContent ( ) ) ; $ this -> line += $ offsetArray [ 'code' ] ; // Account for line 0 $ this -> line -- ; return true ; }
Override properties of an exception specific to the PHP section
of a CMS object.
@param \Exception $exception The exception to modify.
@return bool
Override properties of an exception specific to the PHP section of a CMS object .