0

我创建了一个数组,如下:

$results = array();
do {
  $results[] = $row_products;
} while ($row_products = mysql_fetch_assoc($products));

print_r($results);

这会打印出这样的数组:

Array ( 
[0] => Array ( 
       [productName] => product1 
       ) 
[1] => Array ( 
       [productName] => product2 
       ) 
[2] => Array ( 
       [productName] => product3 
     )

我现在想在另一个 mysql 查询中使用数组中的第二项。

但我无法定义它。我试过了

$results[1];

但这不起作用。所以实际上,如果我回显第二项,它将打印“product2”。

4

2 回答 2

2

您应该在这里学习有关数组的基础知识:http ://www.php.net/manual/en/language.types.array.php

您正在使用嵌套数组,因此您可以像这样访问它:

echo $results[1]['productName'];

另一种解决方案是使用$results[] = $row_products['productName'];然后只是 echo $results[1]

此外,您应该使用 while 循环而不是 do/while 循环,因为似乎没有为第一次迭代定义 $row_products。

while ($row_products = mysql_fetch_assoc($products)) {
  $results[] = $row_products;
}
于 2013-02-19T09:16:17.077 回答
0

试试这个 :

echo $results[1]['productName'] ;

$results[1]是一个数组,如果你想查看数组print_r($results[1]);

于 2013-02-19T09:15:48.770 回答