您好我无法弄清楚如何访问函数返回的二维数组。
我的函数query($query)
位于 Connection 类(Connection.php
内):
public function query($query)
{
$result = mysql_query($query);
$array= array();
for($i=0; $i<mysql_num_rows($result); $i++)
{
$row = mysql_fetch_array($result);
for($j=0;$j<(sizeof($row)/2);$j++)
{
$array[i][j]=$row[$j];
}
}
return $array;
}
和我的test.php文件:
<?php
include 'Connection.php';
$obj1 = new Connection();
echo $obj1->toString();
$array=$obj1->query("SELECT * FROM LeCars ORDER BY ID;");
echo $array[0][0];
echo 'asd:',$array[0][0],'<br>';
echo 'asd:',$array[0][1],'<br>';
echo 'asd:',$array[0][2],'<br>';
echo 'asd:',$array[1][0],'<br>';
echo 'asd:',$array[2][4],'<br>';
var_export($array);
&GT;
test.php的输出:
知识产权:194.00.00.27 登录:asd123 密码:asd123 表:asdasd1123 查询:asd: ASD: ASD: ASD: ASD: array('i'=&gt; array('j'=&gt; NULL,),)Any1知道如何正确地将该数组发送到test.php吗?
我尝试过:循环播放,通过引用发送,双重检查数组rly是否正常工作(确实如此),但我无法将其发送到测试并在那里访问
答案 0 :(得分:0)
mysql_query()不返回二维数组。它返回'resource',这意味着它不是一个php类型的对象。您可以使用特殊功能对其进行操作。
请参阅此处的文档和示例:http://php.net/manual/en/function.mysql-query.php
答案 1 :(得分:0)
首先,toString()应该只返回该字符串值,而不是打印它。
然后,从函数返回的二维数组就像普通的二维数组一样 - 你没有尝试过:
$array=$obj1->query("SELECT * FROM LeCars ORDER BY ID;");
echo $array[0][0];
另请考虑阅读PHP手册中的“foreach”和“count”。