如何从php中的查询创建数组

时间:2014-02-17 23:37:39

标签: php mysql sql arrays

在我的数据库中,我有一个表“选项”,其中包含来自我的网站的选项,如标题,语言等。

我想加载所有这些选项并将其存储在数据库的数组查询中。

此代码工作手册

$option=array("title" => "Site's title", "option2" => "option 2 value");
echo $option[title];

但是当我进行查询时......

$query_options=mysql_query("SELECT * FROM options");

while($data_options = mysql_fetch_row($query_options)){

    $option=array($data_options[1] => $data_options[2]);


}

echo $option[title];

它不起作用。

希望你能帮助我。

谢谢

2 个答案:

答案 0 :(得分:0)

mysql_fetch_row()只允许您根据列顺序访问查询中的列:$ options [0]或$ options [1]。

使用mysql_fetch_array()代替。有了它,您可以使用$ options [“title”]访问数据。使用列名。

请参阅http://www.php.net/manual/fr/function.mysql-fetch-array.php

上的文档

PS - 别忘了把标题放在引号之间!

答案 1 :(得分:0)

$query_options=mysql_query("SELECT * FROM options");
$array = array();

while($data_options = mysql_fetch_array($query_options)){

    $array[]["title"] = $data_options['title'];
    $array[]["value"] = $data_options['value'];

}

var_dump($array);

应该有效。 lemme知道它是怎么回事。

另外,你应该知道你不应该使用任何mysql_ *命令,因为它们是安全的,它们会被折旧,你应该看看这里

http://www.php.net/manual/en/ref.mysql.php

http://www.php.net/manual/en/ref.mysqli.php