在php中为多个列分配多个变量

时间:2014-01-17 16:25:35

标签: php mysql

我用:

foreach($image_files as $index=>$file)} 

在目录中的图片之间循环并将其列在网页中,每张图片在数据库(ID, NAME, DESCRIPTION) ...中都有三个相关列,所以我用

SELECT `NAME`, `DESCRIPTION` FROM `pic_info` WHERE `ID`= '$counter' ... 

但我不知道如何拆分

$rows = mysql_fetch_array($result, MYSQL_ASSOC) 

每个图片的2个变量...例如:对于我需要的第一张图片

$name[0] = pic1 and $description[0] = blahblahblah1 ... 
$name[1] = pic2 , $description[1] = blahblahblah2 ... 

使用

foreach ($rows as $key => $value) {$$key = $value; } 

只是给我一个像$name[0]$description[0]这样的组合数据,我不知道如何将它拆分为两个变量......如果有人展示另一种方法,我们将不胜感激SELECT表中的两列,并将其分配给两个变量。

2 个答案:

答案 0 :(得分:0)

有点不清楚你在问什么,但我想你可能想要这样的东西

$names = array();
$descriptions = array();

while($row = mysql_fetch_assoc($results))
{
    $names[] = $row["NAME"];
    $descriptions[] = $row["DESCRIPTION"];
}

答案 1 :(得分:0)

需要PHP> = 5.5,但这可能会实现您的目标

$names = array_column($rows, 'NAME');
$descriptions = array_column($rows, 'DESCRIPTION');

或者只是在循环遍历SQL查询的结果集时构建所需的数组