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

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/sms.picotech.app/public_html/vendor/masterminds/html5/src/HTML5/Serializer/   drwxr-xr-x
Free 29.18 GB of 117.98 GB (24.73%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

namespace Masterminds\HTML5\Serializer;

/**
 * Traverser for walking a DOM tree.
 *
 * This is a concrete traverser designed to convert a DOM tree into an
 * HTML5 document. It is not intended to be a generic DOMTreeWalker
 * implementation.
 *
 * @see http://www.w3.org/TR/2012/CR-html5-20121217/syntax.html#serializing-html-fragments
 */
class Traverser
{
    
/**
     * Namespaces that should be treated as "local" to HTML5.
     */
    
protected static $local_ns = array(
        
'http://www.w3.org/1999/xhtml' => 'html',
        
'http://www.w3.org/1998/Math/MathML' => 'math',
        
'http://www.w3.org/2000/svg' => 'svg',
    );

    protected 
$dom;

    protected 
$options;

    protected 
$encode false;

    protected 
$rules;

    protected 
$out;

    
/**
     * Create a traverser.
     *
     * @param \DOMNode|\DOMNodeList $dom     The document or node to traverse.
     * @param resource              $out     A stream that allows writing. The traverser will output into this
     *                                       stream.
     * @param array                 $options An array of options for the traverser as key/value pairs. These include:
     *                                       - encode_entities: A bool to specify if full encding should happen for all named
     *                                       charachter references. Defaults to false which escapes &'<>".
     *                                       - output_rules: The path to the class handling the output rules.
     */
    
public function __construct($dom$outRulesInterface $rules$options = array())
    {
        
$this->dom $dom;
        
$this->out $out;
        
$this->rules $rules;
        
$this->options $options;

        
$this->rules->setTraverser($this);
    }

    
/**
     * Tell the traverser to walk the DOM.
     *
     * @return resource $out Returns the output stream.
     */
    
public function walk()
    {
        if (
$this->dom instanceof \DOMDocument) {
            
$this->rules->document($this->dom);
        } elseif (
$this->dom instanceof \DOMDocumentFragment) {
            
// Document fragments are a special case. Only the children need to
            // be serialized.
            
if ($this->dom->hasChildNodes()) {
                
$this->children($this->dom->childNodes);
            }
        }        
// If NodeList, loop
        
elseif ($this->dom instanceof \DOMNodeList) {
            
// If this is a NodeList of DOMDocuments this will not work.
            
$this->children($this->dom);
        }         
// Else assume this is a DOMNode-like datastructure.
        
else {
            
$this->node($this->dom);
        }

        return 
$this->out;
    }

    
/**
     * Process a node in the DOM.
     *
     * @param mixed $node A node implementing \DOMNode.
     */
    
public function node($node)
    {
        
// A listing of types is at http://php.net/manual/en/dom.constants.php
        
switch ($node->nodeType) {
            case 
XML_ELEMENT_NODE:
                
$this->rules->element($node);
                break;
            case 
XML_TEXT_NODE:
                
$this->rules->text($node);
                break;
            case 
XML_CDATA_SECTION_NODE:
                
$this->rules->cdata($node);
                break;
            case 
XML_PI_NODE:
                
$this->rules->processorInstruction($node);
                break;
            case 
XML_COMMENT_NODE:
                
$this->rules->comment($node);
                break;
            
// Currently we don't support embedding DTDs.
            
default:
                
//print '<!-- Skipped -->';
                
break;
        }
    }

    
/**
     * Walk through all the nodes on a node list.
     *
     * @param \DOMNodeList $nl A list of child elements to walk through.
     */
    
public function children($nl)
    {
        foreach (
$nl as $node) {
            
$this->node($node);
        }
    }

    
/**
     * Is an element local?
     *
     * @param mixed $ele An element that implement \DOMNode.
     *
     * @return bool true if local and false otherwise.
     */
    
public function isLocalElement($ele)
    {
        
$uri $ele->namespaceURI;
        if (empty(
$uri)) {
            return 
false;
        }

        return isset(static::
$local_ns[$uri]);
    }
}

:: 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.0033 ]--