$db[]
すべてのデータベースデータをおよび/またはに「自動的に」ロードしたい$_SESSION['db']
。したがって、Webサイト全体に断片をロードするのではなく、このコードを1回ロードするだけで済みます。
メタデータと生データをクエリできました。問題は配列の作成です。
temp
列のあるテーブルがあり、次のようなことができるようにしたいとしますname
。-明らかに、列のあるテーブルがたくさんあります。これは単なる例ですage
echo $db['temp']['name'] . "'s age is: " . $db['temp']['age'];
<?php
$dbn = "db_name";
$dbu = "db_user";
$dbp = "db_password";
$hst = 'db_host';
$dbc = mysql_connect($hst,$dbu,$dbp);
$sql_metadata =
"SELECT `COLUMNS`.`TABLE_NAME` as 'table' , `COLUMNS`.`COLUMN_NAME` as 'column'
FROM `information_schema`.COLUMNS
WHERE `COLUMNS`.`TABLE_SCHEMA` = '$dbn'
ORDER BY TABLE_NAME ASC , `COLUMNS`.`COLUMN_NAME` ASC";
$dbq = mysql_query($sql_metadata, $dbc);
while( $meta = mysql_fetch_array($dbq) )
{
$sql_rawdata = "SELECT `$meta['column']` FROM `$dbn`.`$meta['table']`";
$dbq2 = mysql_query($sql_rawdata);
foreach( ($raw = mysql_fetch_array($dbq2)) as $value) )
{
$db = array
(
$meta['table'] => array( $meta['column'] => $value)
);
}
}
print_r($db);
?>