我正在尝试为我放入的每个表名为多维数组构建一个可重用的函数。
像大多数我开始我的表格惠特ID,并希望启动阵列白衣ID,所以不要启动惠特0 :)。 foneticly--> $my_array[id]["email"]
所以为了构建它,我想“我需要什么”,并找到:$count_colum
,$total_row
数据本身。
我知道如何构建一个数组,但我不知道如何构建一个“变量”数组。
我也知道我不能在数组中使用PHP :)(如果你告诉我的话,请帮助)
$my_array = array( $row['id'] for ($i = 0; $i < $count_colum; $i++){...}
我也希望有人知道我的意思:)我对这一切都有点新意;)
这就是我的目标:
function make_MDA($tablename)
{
$dbh = new PDO("mysql:host='localhost';dbname='dbname', 'usr','pas'");
$query = $dbh->prepare("SELECT * FROM `".$tablename."`");
$query->execute();
$count_colum = $query->columnCount();
$result = $query->fetchAll();
$total_row = count($result);
for ($i = 0; $i < $count_colum; $i++)
{
$meta = $query->getColumnMeta($i);
$column[] = $meta['name'];
}
foreach ($result as $row)
{
$my_array = array( $row['id'] //this is where I'm stuck
}
// echo $column[3];
// echo $total_row;
// echo $count_colum;
}
答案 0 :(得分:1)
这应该有效,不要过于复杂:
function make_MDA($tablename)
{
$dbh = new PDO("mysql:host='localhost';dbname='dbname', 'usr','pas'");
$query = $dbh->prepare("SELECT * FROM `".$tablename."`");
$query->execute();
$result = $query->fetchAll();
foreach ($result as $row)
{
$id = $row['id'];
$my_array[$id] = $row;
}
return $my_array;
}
一旦在此函数之外,我将建立与数据库$dbh
的连接。