我无法从数组中获取值
Array
(
[0] => id
[column_name] => id
)
Array
(
[0] => businessType
[column_name] => businessType
)
Array
(
[0] => name
[column_name] => name
)
Array
(
[0] => city
[column_name] => city
)
...
我从
获取这些值mysql_query("
SELECT column_name
FROM information_schema.columns
WHERE table_name='businessUpgrade'
")
在我的while循环中
while($row = mysql_fetch_array($result)){
while($column = mysql_fetch_array($colName)){
if($row[$i] == 1){
//here comes the missing part
}
$i++;
}
}
我尝试了不同的东西,但根据print_r,我需要得到的值具有相同数量的id(0)。有什么办法,我可以从这个数组中获取值。 我发现我应该用foreach来做,但不知怎的,我尝试的一切都失败了。
答案 0 :(得分:1)
试试这个
$res = mysql_query("
SELECT column_name
FROM information_schema.columns
WHERE table_name='businessUpgrade'
");
while($r = mysql_fetch_row($res)){
$arr[]=$r;
}
注意。不要使用mysql。请尝试使用mysqli或PDO。
答案 1 :(得分:1)
无需使用2 while循环。
$row
数组是associative array,因此您可以使用...
$columns = array();
// {query}
while($row = mysql_fetch_array($result)) {
$columns[] = $row['column_name'];
}
var_dump($columns);
您的$columns
数组现在包含所有列的索引。它是一个零索引,因此可以使用以下方法单独提取:
echo $columns[0]; // The first column from the query "id"
echo $columns[2]; // The third column from the query "name"
您也可以根据需要循环播放此数组。
foreach ($columns as $id => $column) {
if ($id == 0) {
// Do something with the first column:
echo $column;
} elseif ($id == 2) {
// Do something with the third column:
echo $column;
}
}
答案 2 :(得分:1)
用这个:
while($row = mysql_fetch_array($result)){
while($column = mysql_fetch_assoc($colName)){
if(($column['0'] == $row[$i]) && ($row[$i] == 1)){
//something like this???
}
}
$i++;
}
你的问题有点凌乱XD .....我希望无论如何这都有帮助。