Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将值指定给二维数组_Php_Mysql_Multidimensional Array - Fatal编程技术网

Php 将值指定给二维数组

Php 将值指定给二维数组,php,mysql,multidimensional-array,Php,Mysql,Multidimensional Array,我试图将值从db分配到2d数组,但它只显示最后一个ITERM 代码如下: while($row = mysql_fetch_array($results)){ $MyData = array( array("Focus Area", $row["FocusArea"]), array("Finding Title", $row["FindingTitle"]), array("Finding Detail", $row["Findind

我试图将值从db分配到2d数组,但它只显示最后一个ITERM

代码如下:

while($row = mysql_fetch_array($results)){
$MyData = array( array("Focus Area", $row["FocusArea"]),
               array("Finding Title", $row["FindingTitle"]),
               array("Finding Detail", $row["FindindDetail"]) 
             ); 

}//End While
我做错了什么请帮忙

$MyData[] = $row;
就够了

我还建议创建一个函数,因为从db获取数组是一个非常常见的例程。
因此,您可以在一行中获取数据

$myData = getRows("SELECT * FROM table");

每次循环运行时都会声明一个新数组。从while循环中声明它,并添加新值

$MyData = array();
while($row = mysql_fetch_array($results)){
$MyData[] = array( array("Focus Area", $row["FocusArea"]),
               array("Finding Title", $row["FindingTitle"]),
               array("Finding Detail", $row["FindindDetail"]) 
             ); 

}//End While

这将实现这一技巧

$MyData[]中使用
。=
用于字符串连接,因此在此处使用是错误的(数组将转换为字符串…)。不应该对数组使用
=
。最好声明要使用的数据类型。所以一开始它应该是
$myData=array()
,而不是仅仅声明它。aah@Col.这么长时间后我看到你了:),+1,以推荐更好的解决方案。关于这个查询,我唯一不喜欢的是您使用了
*
,这被认为是一种不好的做法
$myData = array();
while($row = mysql_fetch_array($results)){
$MyData[] = array( array("Focus Area", $row["FocusArea"]),
               array("Finding Title", $row["FindingTitle"]),
               array("Finding Detail", $row["FindindDetail"]) 
             ); 

}//End While