1. Go to this page and download the library: Download milesasylum/schnoop library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
milesasylum / schnoop example snippets
use \MilesAsylum\Schnoop;
$conn = new \PDO('mysql:host=localhost', 'root');
$schnoop = Schnoop::createSelf($conn);
// ...
$databaseName = 'acme_db';
if ($schnoop->hasDatabase($databaseName)) {
$database = $schnoop->getDatabase($databaseName);
echo $database->getName(); // acme_database
echo $database->getDefaultCollation(); // I.e. utf8mb4_general_ci
print_r($database->getTableList()); // Array of table names.
} else {
echo "A database named, $databaseName, cannot be found on the server.";
}
// ...
$tableName = 'acme_tbl';
if ($database->hasTable($tableName){
$table = $database->getTable($tableName);
echo $table->getName(); // acme_tbl
echo $table->getEngine(); // I.e. InnoDB
echo $table->getDefaultCollation(); // I.e. utf8mb_general_ci
echo $table->getRowFormat(); // I.e. dynamic
print_r($table->getColumnList()); // Array of column names;
print_r($table->getIndexList()); // Array of index names;
} else {
echo "A table named, $tableName, cannot be found in {$database->getName()}";
}
// ...
$columnName = 'acme_col';
if ($table->hasColumn($columnName) {
$column = $table->getColumn($columnName);
echo $column->getName(); // The name of the column.
echo $column->getDefault(); // I.e. The default value of the column.
var_export($column->isNullable()); // true == NULL, false == NOT NULL.
} else {
echo "A column named, $columnName, does not exists for table {$table->getName()}.";
}
// ...
$dataType = $column->getDataType();
echo $dataType->getType(); // INT, VARCHAR, TEXT or BLOB, etc.
// ...
$indexName = 'PRIMARY KEY';
if ($table->hasIndex($indexName)) {
$index = $table->getIndex($indexName);
echo $index->getConstraintType(); // index, unique, fulltext or spatial.
echo $index->getIndexType(); // hash, btree, rtree or fulltext.
foreach ($index->getIndexedColumns as $indexedColumn) {
echo $indexedColumn->getColumnName(); // The name of the column in the index.
echo $indexedColumn->getLength(); // The index prefix length.
echo $indexedColumn->getCollation(); // The collation (i.e. Asc) of the index on the column.
}
}
// ...
$triggers = $table->getTriggers();
foreach ($triggers as $trigger)
{
echo $trigger->getName(); // The trigger name.
echo $trigger->getEvent(); // INSERT, UPDATE or DELETE.
echo $trigger->getTiming(); // BEFORE or AFTER.
echo $trigger->getBody(); // The trigger logic.
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.