Symfony\Component\HttpKernel\Client::getScript PHP Method

getScript() protected method

Returns the script to execute when the request must be insulated.
protected getScript ( Request $request ) : string
$request Symfony\Component\HttpFoundation\Request A Request instance
return string
    protected function getScript($request)
    {
        $kernel = str_replace("'", "\\'", serialize($this->kernel));
        $request = str_replace("'", "\\'", serialize($request));

        $r = new \ReflectionClass('\\Symfony\\Component\\ClassLoader\\ClassLoader');
        $requirePath = str_replace("'", "\\'", $r->getFileName());
        $symfonyPath = str_replace("'", "\\'", dirname(dirname(dirname(__DIR__))));
        $errorReporting = error_reporting();

        $code = <<<EOF
<?php

error_reporting($errorReporting);

require_once '$requirePath';

\$loader = new Symfony\Component\ClassLoader\ClassLoader();
\$loader->addPrefix('Symfony', '$symfonyPath');
\$loader->register();

\$kernel = unserialize('$kernel');
\$request = unserialize('$request');
EOF;

        return $code.$this->getHandleScript();
    }

Usage Example

Example #1
0
 protected function getScript($request)
 {
     $script = parent::getScript($request);
     $autoload = file_exists(__DIR__ . '/../../vendor/autoload.php') ? __DIR__ . '/../../vendor/autoload.php' : __DIR__ . '/../../../../../../vendor/autoload.php';
     $script = preg_replace('/(\\->register\\(\\);)/', "\$0\nrequire_once '{$autoload}';\n", $script);
     return $script;
 }
All Usage Examples Of Symfony\Component\HttpKernel\Client::getScript