博客列表 >php基础:数组(多维)循环与访问 - 九期线上班

php基础:数组(多维)循环与访问 - 九期线上班

只猫
只猫原创
2019年11月15日 16:13:26548浏览

一、创建数组

// 两种方法 一是用array() 、 二是用[]
// 首先创建一个一维空数组
$arr_null = array(

	);
var_dump($arr_null);	//array(0) { }

二、关联数组和索引数组

//创建一个有值的数组 索引数组 下标是数字默认从0开始
$arr1 = array(
	'php',
	'html',
	'css',
	'js',
	'ajax'
	);
var_dump($arr1);	//array(5) { [0]=> string(3) "php" [1]=> string(4) "html" [2]=> string(3) "css" [3]=> string(2) "js" [4]=> string(4) "ajax" }
echo '<hr>';
//创建一个关联数组 数组的键可以是自定义的字符串或者数字 同一个数组里的下标不可以定义重复,不然后面会把前面的值覆盖。
$arr2 = array(
	'backend'=>'php',
	'front'=>'html'
	);
print_r($arr2);	    //Array ( [backend] => php [front] => html )

三、访问数组

//一维数组的访问 通过存储数组的变量名去找到它 然后通过数组下标去访问里面对应的值
echo '<br>';
echo $arr1[0];	    //php
echo '<br>';	    
echo $arr2['backend'];    //php
echo '<hr>';

四、创建多维数组
//创建一个二维数组 二维数组就是数组的值还是一个数组
$arr3 = array(
	'class1'=>array(
			'Mon'=>'php',
			'Tue'=>'html',
			'Wed'=>'css'	
			),
	'class2'=>array(
			'Mon'=>'php',
			'Tue'=>'html',
			'Wed'=>'css'	
			),
	'class3'=>array(
			'Mon'=>'php',
			'Tue'=>'html',
			'Wed'=>'css'	
			)
	);
print_r($arr3);	//Array ( [class1] => Array ( [Mon] => php [Tue] => html [Wed] => css ) [class2] => Array ( [Mon] => php [Tue] => html [Wed] => css ) [class3] => Array ( [Mon] => php [Tue] => html [Wed] => css ) )

二维数组的访问

// 二维数组的访问 其实和一维数组是一样的 先找到对应的存储变量然后再一层一层的去找需要的值
// 要注意的是echo用于输出数组会报错
echo '<br>';
echo $arr3['class1']['Mon'];	//php
echo '<br>';
print_r($arr3['class1']);		//Array ( [Mon] => php [Tue] => html [Wed] => css )

创建三维数组

//三维数组 数组最好不要超过三维
$arr4 = array(
			array(
				'雷军',
					array(
						'sys'=>'MIUI'
						)
					),
			array(
				'罗永浩',
					array(
						'sys'=>'Smartisan OS'
						)
					),
			array(
					'黄章',
					array(
						'sys'=>'Flyme'
						)
					)
			);

五、数组的循环

//使用foreach
//可以只循环值也可以循环键和值,一维数组一般没必要循环。因为用下标就可以访问到它的值。
foreach($arr2 as $key=>$value){
	echo $key.'===>'.$value.'<br>';
}
/*输出
backend===>php
front===>html
*/
//二维数组循环
echo '<hr>';
foreach($arr3 as $key=>$value){
	print_r($value); //循环出来还是一个数组
}
echo '<br>';
//使用嵌套循环
foreach($arr3 as $key=>$value){
	foreach($value as $k=>$v){
		echo $v.'<br>';	//可以echo出来值了 但是数据量大时候会拖慢程序
	}
}
echo '<br>';
//这样循环
foreach ($arr3 as $key => $value) {
	//$key是class1,class2,class3
	//$value是第二层数组
	//取$value数组中的键Mon、Tue、Wed的值
	print_r($value['Mon']);	//php php php
	echo '<br>';
}
echo '<hr>';

//循环三维数组
foreach ($arr4 as $key => $value) {
	echo 'name:'.$value[0].'<br>';
	echo 'sys:';
	
	foreach($value[1] as $k => $v){
		echo $v;
	}
echo '<hr>';
}

结果

1573803513551014.png


手抄

1573805270430678.png

总结:数组的知识非常重要。可以说在php开发中大部分的时间都在和数组打交道,对数组的基础知识掌握就尤为重要,还是那句要灵活运用。数组的遍历以及多维数的取值真的很难去用大脑想象模拟,说白了就是经常脑子反应不过来。继续练习,积累。





声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议