PhpSandbox\PHPSandbox::autoWhitelist PHP Method

autoWhitelist() protected method

Automatically whitelisted trusted code
protected autoWhitelist ( string $code, boolean $appended = false ) : mixed
$code string String of trusted $code to automatically whitelist
$appended boolean Flag if this code ir prended or appended (true = appended)
return mixed Return result of error handler if $code could not be parsed
    protected function autoWhitelist($code, $appended = false)
    {
        $factory = new ParserFactory();
        $parser = $factory->create(ParserFactory::PREFER_PHP5);
        try {
            $statements = $parser->parse($code);
        } catch (ParserError $error) {
            return $this->validationError('Error parsing ' . ($appended ? 'appended' : 'prepended') . ' sandboxed code for auto-whitelisting!', Error::PARSER_ERROR, null, $code, $error);
        }
        $traverser = new NodeTraverser();
        $whitelister = new WhitelistVisitor($this);
        $traverser->addVisitor($whitelister);
        $traverser->traverse($statements);
        return true;
    }
PHPSandbox