php中数组怎么循环输出

如题所述

//下面是一个例子
$g_id = isset($_GET['id'])?$_GET['id']:'1';//定义变量$g_id,使用三元运算符是为了避免出现waring
$p_id = ($g_id<=9)?('0'.$g_id):($g_id);//定义变量$p_id
//定义一组URL,这里我们用一组图片的地址,可以看到图像文件URL会根据浏览器参数id的不同而得到不同的URL
$Uri = array(
'0' => array('uri'=> '/images/p'.$p_id.'_01.jpg'),
'1' => array('uri'=> '/images/p'.$p_id.'_02.jpg'),
'2' => array('uri'=> '/images/p'.$p_id.'_03.jpg'),
'3' => array('uri'=> '/images/p'.$p_id.'_04.jpg'),
'4' => array('uri'=> '/images/p'.$p_id.'_05.jpg'),
'5' => array('uri'=> '/images/p'.$p_id.'_06.jpg'),
'6' => array('uri'=> '/images/p'.$p_id.'_07.jpg'),
'7' => array('uri'=> '/images/p'.$p_id.'_08.jpg'),
'8' => array('uri'=> '/images/p'.$p_id.'_09.jpg'),
'9' => array('uri'=> '/images/p'.$p_id.'_10.jpg'),
'10' =>array('uri'=> '/images/p'.$p_id.'_11.jpg'),
'11' =>array('uri'=> '/images/p'.$p_id.'_12.jpg'),
'12' =>array('uri'=> '/images/p'.$p_id.'_13.jpg')
);
//使用foreach循环输出img标签,使得网页能正常显示这些图片
foreach ($Uri as $v){
if (file_exists("..".$v['uri'])){//这里需要判断一下图片文件是否存在,如果不存在,则不进行输出,否则页面上会有一个img加载失败的警告信息
echo '<img src="'.$v['uri'].'"/><br/>';
}
}
复制代码
下面我们来看看for、foreach、while这三种循环方式的写法

复制代码
//for:
for($i=0;$i<count($Uri);$i++){
echo $Uri[$i]['uri']."<br/>";
}
echo "<hr>";

//foreach:
foreach($Uri as $v){
echo $v['uri']."<br/>";
}
echo "<hr>";

//while:
$i = 0;
while($i<count($Uri)){
echo $Uri[$i]['uri']."<br/>";
$i++;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-13

可以使用foreach函数输出。举例如下:

PHP:

$arr = [1,2,3,4,5];
foreach($arr as $v){
    echo $v.'<br />';
}

运行结果:循环输出数组中的每个值。

本回答被网友采纳