PhpSandbox\PHPSandbox::_get_declared_classes PHP Méthode

_get_declared_classes() public méthode

Get PHPSandbox redefined classes in place of get_declared_classes(). This is an internal PHPSandbox function but requires public access to work.
public _get_declared_classes ( array $classes = [] ) : array
$classes array Array result from get_declared_classes() is passed here
Résultat array Returns the redefined classes
    public function _get_declared_classes(array $classes = [])
    {
        if (count($this->whitelist['classes'])) {
            $classes = [];
            foreach ($this->whitelist['classes'] as $name => $value) {
                if (class_exists($name)) {
                    $classes[strtolower($name)] = $name;
                }
            }
            foreach ($this->definitions['classes'] as $name => $value) {
                if (class_exists($value)) {
                    $classes[strtolower($name)] = $value;
                }
            }
            return array_values($classes);
        } else {
            if (count($this->blacklist['classes'])) {
                $valid_classes = [];
                foreach ($classes as $class) {
                    $valid_classes[$this->normalizeClass($class)] = $class;
                }
                foreach ($this->definitions['classes'] as $name => $value) {
                    if (class_exists($value)) {
                        $valid_classes[$this->normalizeClass($name)] = $value;
                    }
                }
                foreach ($valid_classes as $index => $name) {
                    if (isset($this->blacklist['classes'][$this->normalizeClass($name)])) {
                        unset($valid_classes[$index]);
                    }
                }
                return array_values($classes);
            }
        }
        $classes = [];
        foreach ($this->definitions['classes'] as $value) {
            if (class_exists($value)) {
                $classes[strtolower($value)] = $value;
            }
        }
        return array_values($classes);
    }
PHPSandbox