首页 > 代码库 > foreach遍历专题

foreach遍历专题

foreach

我们在使用foreach遍历数组时,往往忘了无从下手,介绍一下常用的foreach操作。当然,我们要知道foreach的原理:

 技术分享

技术分享

 技术分享

技术分享 

 技术分享

技术分享技术分享技术分享技术分享技术分享技术分享

 

 

 技术分享

 

 

 

 

 

 

 

 

举一反三

如果我们又想得到将一个二维数组转化成一个表格,又该怎么办呢?

 

<?php

header("Content-type:text/html;Charset=utf-8");

$arr=array

         (

                   ‘stu0‘=>array

                            (

                                     ‘name‘=>‘zhangsan‘,

                                    ‘age‘=>30,

                                    ‘sex‘=>‘woman‘

                            ),

                   ‘stu1‘=>array

                            (

                                     ‘name‘=>‘lisi‘,

                                    ‘age‘=>20,

                                    ‘sex‘=>‘man‘,

                            ),

                   ‘stu2‘=>array

                            (

                                     ‘name‘=>‘lisi‘,

                                    ‘age‘=>20,

                                    ‘sex‘=>‘man‘,

                            )

         );

         /*var_dump($arr);*/

 

$str="<table width=500 border=1 align=center rules=all>";

         $str.="<tr align=center><th>序号</th><th>姓名</th><th>年龄</th><th>性别</th></tr>";

         $i=1;

         foreach ($arr as  $value1) {

                            $str.="<tr align=center><td>$i</td>";

                            foreach ($value1 as $value2) {

                                     $str.="<td>$value2</td>";

                            }

                            $str.="</tr>";

                            $i++;

         }

$str.="</table>";

echo $str;

?>

 

验证码

 

对此我们应该还在里面加入一个判断

当然,我们在用foreach时候也会用到其他的一些如for循环,while+each+list

For

<?php

// 设置响应头格式

header("Content-type:text/html;Charset=utf-8");

// 显式的创建一个数组

$arr = array(

         ‘name‘      =>     ‘鸣人‘,

         ‘home‘      =>     ‘木叶‘,

         ‘skill‘          =>     ‘螺旋丸‘,

         ‘teacher‘=>       ‘卡卡西‘,

         ‘wife‘         =>     ‘雏田‘,

);

echo ‘<pre>‘;

next($arr);

// 用for循环实现数组的遍历

for($i=1,$num=count($arr),reset($arr);$i<=$num;$i++) {//$i代表循环的次数

         // 获取当前元素的键

         $key = key($arr);

         // 获取当前元素的值

         $value = http://www.mamicode.com/current($arr);

         // 对当前元素进行相关的操作

         var_dump($key,$value);

         // 数组指针位置下移

         next($arr);

}

for循环遍历,只适合索引数组,因为,我们都是先得到数组的下标,然后再利用下标去访问数组的元素,但是,从逻辑上来说,下标是数组的一部分,一定是先有元素,才得到元素的下标!

 

所以,上面的for循环遍历数组,不是真正意义上的数组的遍历

 

foreach遍历专题