Correction status:qualified
Teacher's comments:数组就是有序的键值对,也普通变量不同, 需要用变量名与索引来访问
索引数组:
代码中没有下标,以01234显示,从0开始。不是从1开始。
关联数组:
代码中有下标,以下标显示,没有0活着123等数字整型的下标。
<?php $arr = array( 'ouyangke' => '欧阳克', 'zhulaoshi' => '朱老师', 'zhuge' => '猪哥', 'xiaoqiang' => '小强' ); print_r($arr); ?>
点击 "运行实例" 按钮查看在线实例
关联数组按下标输出:
<?php $arr = array( 'ouyangke' => '欧阳克', 'zhulaoshi' => '朱老师', 'zhuge' => '猪哥', 'xiaoqiang' => '小强' ); echo $arr['ouyangke']; echo '<hr>'; echo $arr['zhulaoshi']; echo '<hr>'; echo $arr['zhuge']; echo '<hr>'; echo $arr['xiaoqiang']; echo '<hr>'; ?>
点击 "运行实例" 按钮查看在线实例
以下标形式,来输出数组中的每个键中的值。
循环二维数组:
在数组中嵌套一个数组
<?php $arr = array( array( 'name' => 'ouyangke', 'age' => 88, ), array( 'name' => 'zhuge', 'age' => 78, ), array( 'name' => 'zhulaoshi', 'age' => 68, ), array( 'name' => 'xiaoqiang', 'age' => 18, ), ); foreach ($arr as $k => $v) { print_r($v); echo "<br>"; } ?>
点击 "运行实例" 按钮查看在线实例
三维及多维数组:
通过数组中的键活着说下标,访问下层的数据,如果没有定义活着给予下标的,用索引数组的规则,0123的默认方式访问即可
<?php $arr = array( array( 'name' => 'ouyangke', 'age' => 88, ), array( 'name' => 'zhuge', 'age' => 78, ), array( 'name' => 'zhulaoshi', 'age' => 68, ), array( 'name' => 'xiaoqiang', 'age' => 18, 'jineng' => [ 'php', 'javascript', 'shujvku' ] ), ); foreach ($arr as $k => $v) { print_r($v); echo "<br>"; } echo '<br>'; echo $arr[3]['jineng'][2]; ?>
点击 "运行实例" 按钮查看在线实例
如图,在语句中,第一层没有下标,因为需要输出的数组内容在最后一个也就是第四个内部数组中,所以默认的下标时3,再下以层给了下标是jineng,所以按照xiabiao继续寻找下以层,最里层没有给下标,但是在最里层中需要输出的值在最后一个也就是默认的2,所以程序中正确输出了shujvku。
循环三维数组:
<?php $arr = array( array( 'name' => 'ouyangke', 'age' => 88, ), array( 'name' => 'zhuge', 'age' => 78, ), array( 'name' => 'zhulaoshi', 'age' => 68, ), array( 'name' => 'xiaoqiang', 'age' => 18, 'jineng' => 'shujvku' ), ); foreach ($arr as $k => $v) { foreach ($v as $key => $value) { echo $value; echo '<hr>'; } } ?>
点击 "运行实例" 按钮查看在线实例
数组最好不要超过3层,而从数据库中,基本都是二维数组,就算只有一条数据,也是一个二维数组,只是第二条数据为空,当连接数据库后,出现的数据必然是二维数组。而输出基本都是以表格类似。