我想做一个表,第一列由数据库的名称组成,第二列由数组的值组成。这就是我所拥有的
<table>
<tr>
<?php $arr=array(3,5,2,4,1);
$name= mysql_query("SELECT name FROM table")
foreach ($arr as $rs){
while($n=mysql_fetch_array($name)){ ?>
<td><?=$n['name']?></td>
<td><?=$rs?></td>
</tr>
<?php } } ?>
</table>
我需要像这样的输出
name_a 3
name_b 5
name_c 2
name_d 4
name_e 1
先感谢您。
您不需要该foreach
循环。只需array_shift()
在while()
循环内部使用函数即可获取每个数组元素。因此,您的代码应如下所示:
<table>
<tr>
<?php
$arr=array(3,5,2,4,1);
$name= mysql_query("SELECT name FROM table")
while($n=mysql_fetch_array($name)){
$rs = array_shift($arr);
?>
<td><?=$n['name']?></td>
<td><?=$rs?></td>
</tr>
<?php
}
?>
</table>
此外,仅当表中的行数等于数组中的元素数时,您的业务逻辑工作才会起作用。如果不是这种情况,则需要LIMIT
在查询中使用子句。
旁注:不要使用mysql_*
函数,从PHP 5.5开始不推荐使用这些函数,并且在PHP 7.0中将其全部删除。使用mysqli
或pdo
代替。这就是为什么你不应该使用mysql_*
函数的原因。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句