作者名:Demo不是emo
主页面链接:主页传送门创作初心:对于计算机的学习者来说,初期的学习无疑是最迷茫和难以坚持的,中后期主要是经验和能力的提高,我也刚接触计算机1年,也在不断的探索,在CSDN写博客主要是为了分享自己的学习历程,学习方法,总结的经验等等,希望能帮助到大家座右铭:不要让时代的悲哀成为你的悲哀专研方向:网络安全,数据结构
每日emo:生活有很多味道,最苦和最甜都是你
学习php的第五天,今天学习的是php中的数组和数据结构,话不多说直接开始
目录
一:PHP中的数组和数据结构
1.数组的定义
2.索引数组
3.关联数组
4.数组的操作
1.增加
2.删除
5.for循环遍历数据
6.foeach函数遍历关联数组
7.list和each函数
1.list函数
2.echo函数
一:PHP中的数组和数据结构 1.数组的定义-
数组可以存入多个不同类型的数据,甚至还可以存数组,这样的数组我们叫多维数组,是一个复合数据类型。
-
数组的英文是array
最简单的声明
$shu = array(1 , 1.5 , true ,'天王盖地虎,小鸡炖蘑菇');
经过上面的例子我们发现,这里的数组存放了多个类型的数据,这里还有一个知识点,就是下标(索引) 的概念,数组中的第一个数据下标为0,第二个数据下标为1,依次类推,举个例子:
如果想从上面的数组中取出“true”这个参数,就能通过$shu[2]来代表“true”,即
$shu[2] =true
上面讲到了索引数组的下标从0开始,那如果我们不想让他从0开始可以吗?当然是可以的,这里就要用到我们以前学的键值对应符
意思就是下标为5的位置和20的位置保存数据(相当于可以指定保存)
注意 :声明数组并不一定需要arary,这样也可以
$minren = [
'杨幂',
'王珞丹',
100 => '刘亦菲',
'黄圣依',
'范冰冰'
];
3.关联数组
只要数组里面有一个下标为字符串的数组,就为关联数组。例如下面这种
$rela = array(
'帅' => '陈奕迅',
'很帅' => '黄晓明',
'灰常灰常帅' => '宁泽涛',
'有男人味的大叔' => '吴秀波',
);
4.数组的操作
1.增加
$minren = array(
'杨幂',
'王珞丹',
'刘亦菲',
'黄圣依'
);
$minren[] = '范冰冰';
//这里不给出下标位置就是在最后一位数据的后一位添加数据
$minren[100] = '范爷';
//它的下标又为几呢?
2.删除
$minren = array(
'杨幂',
'王珞丹',
'刘亦菲',
'黄圣依',
'范冰冰'
);
//删除时后续的数据并不会自动填补
unset($minren[3]);
5.for循环遍历数据
遍历二字,从字面解释就是一个接一个全读访问一次,显示出来。
6.foeach函数遍历关联数组
我们通过上一章的内容学会了for循环遍历连续下标的索引数组。可是,我们发现我们遍历不了关联数组,也遍历不了下标不连续的索引数组。
那我们其实在学循环的时候,有一个循环是专门用来循环数组的。这个循环的基本语法就是foreach基本语法。基本格式如下:
foreach( 要循环的数组变量 as [键变量 =>] 值变量){
//循环的结构体
}
有些同学可能还是不太理解,在这里也给大家准备了一个实例
注意:$key 和$value并不是变量名必须得为这两个名字。你命名为其他的也可以,如 $kai => $wen是一样的。 你要清楚键赋值给了哪个变量,值赋值给了另外的哪个变量。
7.list和each函数 1.list函数它的功能:将索引数组下标为0的对应我变量1,下标1的对应变量2,依此类推,就像下面这样
2.echo函数
功能:传入一个数组。它会将其中的一个元素拆为个新数组。每次执行这样操作一个元素。执行一次先后移动一次,同样的方式操作下一个数组元素。执行到最后,返回false。这个比较难以理解,还是通过下面的代码给大家解释一下吧
-
读取了$kongjie中的第一个元素,将第一个元素('gao'=>'穿黑衣服的')分解开了。
-
分解后第一个元素变成了一个新数组。
-
在新数组里面,将原值(穿黑衣服的)放了索引下标1里面,同时放到了关联下标value里面。
-
在新数组里面,将原键(gao),放到了关联下标key里面,放到了索引下标0里面。
-
可以简单理解为从=号处将其分开,使得一个数据变成两个数据并构成新的数组
-
each的另外一个特性。读一次,向后移动一个元素。这里的元素指定是最开始的元素,而不是分割后的元素,即第一次each分割第一个元素,第二次分割第二个元素,以此类推,直到没有可以操作的元素
php今日份学习结束,(本来早就快写完了手贱按了一下撤销,什么都没了,也没备份,只能重新再写一遍了,我的难过谁能知道啊,哎) ,同志们要加油哇!