从 MySQL 获取 PHP 关联数组


Get PHP associative array from MySQL

我试图将SQL中的数据放入数组中,同时使相同的数组与源列的名称相关联。这是函数,我得到的:

GetRowFromDb("`id`,`name`,`email`", " WHERE `id`='1'", "database1", "table1");
function GetRowFromDb ($column, $condition, $database, $table) { 
  $target="`$database`.`$table`";
  $query="SELECT $column FROM $target $condition";
  $indexedrow=mysql_fetch_row(mysql_query($query));
  return $indexedrow; 
}

这给了我回索引数组。当我想了解电子邮件时,我需要使用索引(数字),例如$result[2]。但是我想让我的数组与源列的名称相关联,就像这样

print $result[email] //should return email

感谢您的回复!马赛尔

使用 mysql_fetch_assoc 而不是 mysql_fetch_row

GetRowFromDb("`id`,`name`,`email`", " WHERE `id`='1'", "database1", "table1");
function GetRowFromDb ($column, $condition, $database, $table) { 
  $target="`$database`.`$table`";
  $query="SELECT $column FROM $target $condition";
  $indexedrow=mysql_fetch_assoc(mysql_query($query));
  return $indexedrow; 
}

你必须改变这一行

 $indexedrow=mysql_fetch_row(mysql_query($query));

 $indexedrow=mysql_fetch_assoc(mysql_query($query));

mysql_fetch_row 返回以数字作为键的数组,mysql_fetch_assoc将字段名称作为键返回。

文档很有帮助。 您可以使用mysql_fetch_assoc