php——三篇夯实根基第三篇_php 根基键值分类,2024年最新物联网嵌入式开发网络通信面试题

36 阅读4分钟

目录

七、数组

(一)数组的基本概念

(二)数组的分类

(三)数组的特点

(四)数组的创建

1.直接赋值

2.array()赋值

(五)数组对元素的访问

​​(六)数组的遍历

1.for循环

​2.foreach遍历


七、数组

(一)数组的基本概念

  • 复合数据类型,非线性

  • 键值对(key-value),key代表着存储数组中变量的编号(一般就是整数和字符串),value存储进来的变量的值。

  • 索引数组,变量的“编号”是证书,证书不具备一定的语义。

  • 关联数组,变量的“编号”用字符串表示,可以具备一定的语义,PHP中最常用的方式。

<?php
	//描述一个人基本信息
	$name = "xiaofeng";
	$age = 21;
	$sex = true;
	$weight= "56kg";
	
	$stu1[] = $name;
	$stu1[] = $age;
	$stu1[] = $sex;
	$stu1[] = $weight;
	echo "<pre>";
	var_dump($stu1);
	//echo $stu1;
?>

注意:echo语句不能够输出数据,可以使用print_r()函数输出数组

(二)数组的分类

        数组根据下标可分为:索引数组,关联数组,混合数组

  • 数组下标若全为数字,那么称之为****索引数组

  • 数组下标若全为字符串,那么称之为****关联数组

(三)数组的特点

  1. 可以整数下标或者字符串下标

  2. 不同下标可以混合存在

  3. 数组元素的顺序以放入顺序为准,跟下标无关

  4. 数字下标的自增长特性

  5. 特殊值下标的自动转换

(四)数组的创建

1.直接赋值

  • 变量名称[索引值]=数据;

  • 变量名称[]=数据;//不写索引值默认是数值数组,从0开始。

<h3>数组的创建:直接赋值</h3>
<h4>索引数组</h4>
<?php
	header("Content-type:text/html;charset=gbk");
	$stu1[] = "chuhe";
	$stu1[] = true;
	$stu1[] = 24;
	$stu1[] = "56kg";
	echo "<pre>";//格式化输出
	//var_dump($stu1);
	print_r($stu1);
?>
<hr>
<?php
	$stu2[5] = "xiaofeng";//可以指定键值
	$stu2[1000] = true;
	$stu2[500] = 22;
	$stu2[] = "55.8kg";//也可以不指定,按照最大值依次往下排
	#print_r($stu2);//有的时候不一定全部信息都输出
	var_dump($stu2);
?>
<h4>关联数组</h4>
<hr>
<?php
	$stu3['name'] = "qingniao";
	$stu3['age'] = 20;
	$stu3['sex'] = False;
	$stu3['weight'] = '45kg';
	var_dump($stu3);
	print_r($stu3);
?>
	

2.array()赋值

  • 数组中的key可以自定义

  • PHP中的key大多为字符串或者数字,字符串比较容易了解变量的含义。

  • array()不是函数,只是一种语言结构。

<h3>数组的创建:array语言结构</h3>
<?php
	header("Content-type:text/html;charset=gbk");
	$stu1 = array("chuhe",true,24,'56kg');echo "<pre>";
	var_dump($stu1)//索引数组
?>
<hr>
<?php
	$stu2 = array(
	10 => 'qingniao',//=>连接key和value
	false,
	2000 => 20,
	"45kg"
);
print_r($stu2);//索引数组
?>
<hr>
<?php
	$stu3 = array(
	'name' => 'xiaofeng',//key最好用引号,否则会有notice提示!
	'age' => '22',
	'sex' => true,
	'weigth' => "55.6kg"
	);
	var_dump($stu3);
?>

(五)数组对元素的访问

  • 读取,捕获数组中的value

  • 修改,直接赋值即可

  • 增加,直接赋值即可

  • 删除,无意义

<h3>数组元素的访问</h3>
<?php
	header("Content-type:text/html;charset=gbk");
	$stu1 = array("chuhe",true,24,'56kg');echo "<pre>";//索引数组
?>
<?php
	$stu2 = array(
	10 => 'qingniao',
	false,
	2000 => 20,
	"45kg"
);//索引数组
?>
<?php
	$stu3 = array(
	'name' => 'xiaofeng',
	'age' => '22',
	'sex' => true,
	'weigth' => "55.6kg"
	); //关联数组
#$stu = array($stu1,$stu2,$stu3);//二维数组,属于混合数组
$stu = array('stu1' => $stu1,'stu2' => $stu2,'stu3' => $stu3);
//var_dump($stu);
	print_r($stu); 
	echo "楚河的年龄是:".$stu1[2]."<hr>";
	echo "青鸟的年龄是:".$stu2[2000]."<hr>";
	echo "萧风的年龄是:".$stu['stu3']['age']."<hr>";
	for($i=1;$i<6;$i++){
		$stu['stu3']['age']++; //几年过去了,萧风的年龄在生长
	}
	echo "几年过去后,萧风年龄是:".$stu['stu3']['age']."<hr>";
	$result = "work hard!";
	$stu3['pj'] = $result;
	//print_r($stu3);
	//echo "萧风被老板的评价是:".$stu3['pj'].'<hr>';
	$stu['stu3'] = $stu3;//必须重新更新一下二维数组的key值
	echo "萧风被老板的评价是:".$stu['stu3']['pj'].'<hr>';
	?>

(六)数组的遍历

1.for循环

img img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上物联网嵌入式知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、电子书籍、讲解视频,并且后续会持续更新

如果你需要这些资料,可以戳这里获取