PHP中的foreach循环中的while循环

汤田Do

我想做一个表,第一列由数据库的名称组成,第二列由数组的值组成。这就是我所拥有的

<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

先感谢您。

拉吉普·保罗(Rajdeep Paul)

您不需要该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中将其全部删除。使用mysqlipdo代替。这就是为什么你不应该使用mysql_*函数的原因

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章