【发布时间】:2014-05-25 15:51:24
【问题描述】:
我编写了这个简单的代码,并从 MySQL 表中提取了两列。然后我无法将其转换为多维数组。
所以我的表只有 2 行,而我期望它会给我 2 行和 2 列的输出。但是数组大小却变成了 4(而不是 2),而且它给temp[2] 和temp[3] 的打印提供了错误
<?php
mysql_connect("localhost","root",""); //Connecting to the localhost
mysql_select_db("user"); //Selecting a database
$auth_data = mysql_query("SELECT EMAIL,UNIQUE_ID FROM authentication");
#Converting the object to an array
$temp = mysql_fetch_array($auth_data, MYSQL_BOTH);
echo sizeOf($temp);
echo $temp[0];
echo $temp[1];
echo $temp[2];
echo $temp[3];
?>
错误:
4abhinav.chawla@iiitb.org1
Notice: Undefined offset: 2 in C:\xampp\htdocs\test\test.php on line 11
Notice: Undefined offset: 3 in C:\xampp\htdocs\test\test.php on line 12
【问题讨论】:
-
mysql_fetch_array()只获取一行(其列作为数组);然后它前进指针,以便下一次调用将获取下一行。您需要反复调用它,通常在像while ($row = mysql_fetch_array($auth_data)) do_something_with($row);这样的循环中。
标签: php mysql sql arrays multidimensional-array