Add plugin for printing table structure in expanded format
Instead of trying to squeeze everything into three columns, this plugin uses multiple columns for each part of a column's structure.
This commit is contained in:
parent
76612b1e8a
commit
4801da091b
31
plugins/table-structure.php
Normal file
31
plugins/table-structure.php
Normal file
|
@ -0,0 +1,31 @@
|
|||
<?php
|
||||
|
||||
/** Expanded table structure output
|
||||
* @link https://www.adminer.org/plugins/#use
|
||||
* @author Matthew Gamble, https://www.matthewgamble.net/
|
||||
* @license http://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0
|
||||
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2 (one or other)
|
||||
*/
|
||||
class AdminerTableStructure {
|
||||
|
||||
/** Print table structure in tabular format
|
||||
* @param array data about individual fields
|
||||
* @return bool
|
||||
*/
|
||||
function tableStructurePrint($fields) {
|
||||
echo "<table cellspacing='0'>\n";
|
||||
echo "<thead><tr><th>" . lang('Column') . "<th>" . lang('Type') . "<th>" . lang('Nullable') . "<th>" . lang('Default') . (support("comment") ? "<th>" . lang('Comment') : "") . "</thead>\n";
|
||||
foreach ($fields as $field) {
|
||||
echo "<tr" . odd() . "><th>" . h($field["field"]) . ($field["primary"] ? " (PRIMARY)" : "");
|
||||
echo "<td><span>" . h($field["full_type"]) . "</span>";
|
||||
echo ($field["auto_increment"] ? " <i>" . lang('Auto Increment') . "</i>" : "");
|
||||
echo ($field["collation"] ? " <i>" . h($field["collation"]) . "</i>" : "");
|
||||
echo "<td>" . ($field["null"] ? lang('Yes') : lang('No'));
|
||||
echo "<td>" . (isset($field["default"]) ? h($field["default"]) : " ");
|
||||
echo (support("comment") ? "<td>" . nbsp($field["comment"]) : "");
|
||||
echo "\n";
|
||||
}
|
||||
echo "</table>\n";
|
||||
return true;
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue