Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.31
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
share /
phpmyadmin /
libraries /
di /
[ HOME SHELL ]
Name
Size
Permission
Action
AliasItem.php
850
B
-rw-r--r--
Container.php
3.45
KB
-rw-r--r--
FactoryItem.php
469
B
-rw-r--r--
Item.php
383
B
-rw-r--r--
ReflectorItem.php
3.38
KB
-rw-r--r--
ServiceItem.php
609
B
-rw-r--r--
ValueItem.php
636
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ReflectorItem.php
<?php /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * Holds the PMA\libraries\di\ReflectorItem class * * @package PMA */ namespace PMA\libraries\di; /** * Reflector manager * * @package PMA\libraries\di */ abstract class ReflectorItem implements Item { /** @var Container */ private $_container; /** @var \Reflector */ private $_reflector; /** * Constructor * * @param Container $container Container * @param mixed $definition Definition */ public function __construct(Container $container, $definition) { $this->_container = $container; $this->_reflector = self::_resolveReflector($definition); } /** * Invoke the reflector with given parameters * * @param array $params Parameters * @return mixed */ protected function invoke($params = array()) { $args = array(); $reflector = $this->_reflector; if ($reflector instanceof \ReflectionClass) { $constructor = $reflector->getConstructor(); if (isset($constructor)) { $args = $this->_resolveArgs( $constructor->getParameters(), $params ); } return $reflector->newInstanceArgs($args); } /** @var \ReflectionFunctionAbstract $reflector */ $args = $this->_resolveArgs( $reflector->getParameters(), $params ); if ($reflector instanceof \ReflectionMethod) { /** @var \ReflectionMethod $reflector */ return $reflector->invokeArgs(null, $args); } /** @var \ReflectionFunction $reflector */ return $reflector->invokeArgs($args); } /** * Getting required arguments with given parameters * * @param \ReflectionParameter[] $required Arguments * @param array $params Parameters * *@return array */ private function _resolveArgs($required, $params = array()) { $args = array(); foreach ($required as $param) { $name = $param->getName(); $type = $param->getClass(); if (isset($type)) { $type = $type->getName(); } if (isset($params[$name])) { $args[] = $params[$name]; } elseif (is_string($type) && isset($params[$type])) { $args[] = $params[$type]; } else { $content = $this->_container->get($name); if (isset($content)) { $args[] = $content; } elseif (is_string($type)) { $args[] = $this->_container->get($type); } else { $args[] = null; } } } return $args; } /** * Resolve the reflection * * @param mixed $definition Definition * * @return \Reflector */ private static function _resolveReflector($definition) { if (function_exists($definition)) { return new \ReflectionFunction($definition); } if (is_string($definition)) { $definition = explode('::', $definition); } if (!isset($definition[1])) { return new \ReflectionClass($definition[0]); } return new \ReflectionMethod($definition[0], $definition[1]); } }
Close