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

/usr/share/php/PhpMyAdmin/SqlParser/Utils/   drwxr-xr-x
Free 13.21 GB of 57.97 GB (22.79%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

/**
 * Table utilities.
 */

namespace PhpMyAdmin\SqlParser\Utils;

use 
PhpMyAdmin\SqlParser\Statements\CreateStatement;

/**
 * Table utilities.
 *
 * @category   Statement
 *
 * @license    https://www.gnu.org/licenses/gpl-2.0.txt GPL-2.0+
 */
class Table
{
    
/**
     * Gets the foreign keys of the table.
     *
     * @param CreateStatement $statement the statement to be processed
     *
     * @return array
     */
    
public static function getForeignKeys($statement)
    {
        if (empty(
$statement->fields)
            || (! 
is_array($statement->fields))
            || (! 
$statement->options->has('TABLE'))
        ) {
            return array();
        }

        
$ret = array();

        foreach (
$statement->fields as $field) {
            if (empty(
$field->key) || ($field->key->type !== 'FOREIGN KEY')) {
                continue;
            }

            
$columns = array();
            foreach (
$field->key->columns as $column) {
                
$columns[] = $column['name'];
            }

            
$tmp = array(
                
'constraint' => $field->name,
                
'index_list' => $columns
            
);

            if (! empty(
$field->references)) {
                
$tmp['ref_db_name'] = $field->references->table->database;
                
$tmp['ref_table_name'] = $field->references->table->table;
                
$tmp['ref_index_list'] = $field->references->columns;

                if (
$opt $field->references->options->has('ON UPDATE')) {
                    
$tmp['on_update'] = str_replace(' ''_'$opt);
                }

                if (
$opt $field->references->options->has('ON DELETE')) {
                    
$tmp['on_delete'] = str_replace(' ''_'$opt);
                }

                
// if (($opt = $field->references->options->has('MATCH'))) {
                //     $tmp['match'] = str_replace(' ', '_', $opt);
                // }
            
}

            
$ret[] = $tmp;
        }

        return 
$ret;
    }

    
/**
     * Gets fields of the table.
     *
     * @param CreateStatement $statement the statement to be processed
     *
     * @return array
     */
    
public static function getFields($statement)
    {
        if (empty(
$statement->fields)
            || (! 
is_array($statement->fields))
            || (! 
$statement->options->has('TABLE'))
        ) {
            return array();
        }

        
$ret = array();

        foreach (
$statement->fields as $field) {
            
// Skipping keys.
            
if (empty($field->type)) {
                continue;
            }

            
$ret[$field->name] = array(
                
'type' => $field->type->name,
                
'timestamp_not_null' => false
            
);

            if (
$field->options) {
                if (
$field->type->name === 'TIMESTAMP') {
                    if (
$field->options->has('NOT NULL')) {
                        
$ret[$field->name]['timestamp_not_null'] = true;
                    }
                }

                if (
$option $field->options->has('DEFAULT')) {
                    
$ret[$field->name]['default_value'] = $option;
                    if (
$option === 'CURRENT_TIMESTAMP') {
                        
$ret[$field->name]['default_current_timestamp'] = true;
                    }
                }

                if (
$option $field->options->has('ON UPDATE')) {
                    if (
$option === 'CURRENT_TIMESTAMP') {
                        
$ret[$field->name]['on_update_current_timestamp'] = true;
                    }
                }

                if (
$option $field->options->has('AS')) {
                    
$ret[$field->name]['generated'] = true;
                    
$ret[$field->name]['expr'] = $option;
                }
            }
        }

        return 
$ret;
    }
}

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