phpple / altable
v0.1.9
2021-12-03 04:43 UTC
Requires (Dev)
- phpunit/phpunit: ^5.6 || ^7.0 || ^7.1 || ^7.2
This package is not auto-updated.
Last update: 2024-11-11 16:31:33 UTC
README
本项目用来对通过mysqldump出来的表结构数据进行解析,分析出数据库、数据表、字段、主键、索引等信息。
使用步骤
composer引入项目
composer require phpple/altable
通过mysqldump导出需要的表结构:
mysqldump --all-databases --no-data > dump.sql
编写php脚本分析数据库结构
<?php require 'vendor/autoload.php'; $parser = new Phpple\Altable\Parser(); // 设定不需要分析哪些库或者表 $parser->dbFilters = [ // 整个库不予分析 'mysql' => null, // foo.bar不予分析 'foo' => ['bar'], ]; $dbs = $parser->parse(__DIR__.'/dump.sql'); // 开始进行分析 foreach($dbs as $db) { foreach($db->tables as $table) { foreach($table->fields as $field) { if ($field->name == 'uid') { echo "`{$db->name}`.`{$table->name}` found uid field"; } } } } // 通过名称查找名称为foo的DB $parser->find($dbs, 'foo'); // 通过名称查找名称为foo.bar的Table $parser->find($dbs, 'foo', 'bar'); // 通过名称查找表foo.bar里的字段uid $parser->find($dbs, 'foo', 'bar', 'uid');