当前位置 : 主页 > 网络编程 > PHP >

MySQLDict.php

来源:互联网 收集:自由互联 发布时间:2021-06-28
MySQLDict.php '', 'username' = '', 'password' = '', 'database' = '',];$no_show_table = [];$no_show_field = [];$prefix = 'db';$mysqli = new mysqli($config['host'], $config['username'], $config['password'], $config['database']);if (mysqli_con
MySQLDict.php
  '',
    'username' => '',
    'password' => '',
    'database' => '',
];

$no_show_table = [];
$no_show_field = [];
$prefix = 'db';

$mysqli = new mysqli($config['host'], $config['username'], $config['password'], $config['database']);

if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}
mysqli_query($mysqli, 'SET NAMES utf8');
$table_result = mysqli_query($mysqli, 'show tables');


//get all table
while ($row = mysqli_fetch_array($table_result)) {
    if (@!in_array($row[0], $no_show_table)) {
        $tables[]['TABLE_NAME'] = $row[0];
    }
}

//replace prefix
if (@$_GET['prefix']) {
    foreach ($tables as $key => $val) {
        $tableName = $val['TABLE_NAME'];
        $string = explode('_', $tableName);
        if (@$string[0] != $prefix) {
            $string[0] = $prefix;
            $newTableName = implode('_', $string);
            mysqli_query($mysqli, 'rename table ' . $tableName . ' TO ' . $newTableName);
        }
    }
    echo "replace success!";
    exit();
}

foreach ($tables as $k => $v) {
    $sql = 'SELECT * FROM ';
    $sql .= 'INFORMATION_SCHEMA.TABLES ';
    $sql .= 'WHERE ';
    $sql .= "table_name = '{$v['TABLE_NAME']}'  AND table_schema = '{$config['database']}'";
    $table_result = mysqli_query($mysqli, $sql);
    while ($t = mysqli_fetch_array($table_result)) {
        $tables[$k]['TABLE_COMMENT'] = $t['TABLE_COMMENT'];
    }

    $sql = 'SELECT * FROM ';
    $sql .= 'INFORMATION_SCHEMA.COLUMNS ';
    $sql .= 'WHERE ';
    $sql .= "table_name = '{$v['TABLE_NAME']}' AND table_schema = '{$config['database']}'";

    $fields = array();
    $field_result = mysqli_query($mysqli, $sql);
    while ($t = mysqli_fetch_array($field_result)) {
        $fields[] = $t;
    }
    $tables[$k]['COLUMN'] = $fields;
}
mysqli_close($mysqli);


$html = '';
// show tables list
foreach ($tables as $k => $v) {
    $html .= '

' . ($k + 1) . '、' . $v['TABLE_COMMENT'] . ' (' . $v['TABLE_NAME'] . ')

' . "\n"; $html .= ' ' . "\n"; $html .= ' ' . "\n"; $html .= ' ' . "\n"; $html .= ' 字段名' . "\n"; $html .= ' 数据类型' . "\n"; $html .= ' 默认值' . "\n"; $html .= ' 允许非空' . "\n"; $html .= ' 自动递增' . "\n"; $html .= ' 备注' . "\n"; $html .= ' ' . "\n"; foreach ($v['COLUMN'] as $f) { if (@!is_array($no_show_field[$v['TABLE_NAME']])) { $no_show_field[$v['TABLE_NAME']] = array(); } if (@!in_array($f['COLUMN_NAME'], $no_show_field[$v['TABLE_NAME']])) { $html .= ' ' . "\n"; $html .= ' ' . $f['COLUMN_NAME'] . '' . "\n"; $html .= ' ' . $f['COLUMN_TYPE'] . '' . "\n"; $html .= ' ' . $f['COLUMN_DEFAULT'] . '' . "\n"; $html .= ' ' . $f['IS_NULLABLE'] . '' . "\n"; $html .= ' ' . ($f['EXTRA'] == 'auto_increment' ? '是' : ' ') . '' . "\n"; $html .= ' ' . $f['COLUMN_COMMENT'] . '' . "\n"; $html .= ' ' . "\n"; } } $html .= ' ' . "\n"; $html .= ' ' . "\n"; } ?> MySQL Dict

MySQL Dict

上一篇:db.txt
下一篇:判断是否真实gif图.txt
网友评论