PHP初学之数组
来源:互联网 发布:mac还原hosts文件 编辑:程序博客网 时间:2024/05/19 02:28
PHP中没有链表,也就是没有list,只有array,也就是数组
一、定义;以若干键值对的形式保存数据的一种方法,
二、创建;
1、直接存多个键值对
array $stu = array( key => value , ...)
key;键,可以是整形或string类型,数组里的key不能重复
value ;值,可以是任意类型的值
2、 多次添加单个键值对
$stu[ key ]= value;
$stu[‘说’]=’忽悠’;
$stu[‘学’]=’作弊’;
$stu[‘逗’]=’贫嘴’;
$stu[‘唱’]=’假唱’;
3、懒人专用
$stu = array( value1 , value2, value3 ...)
或
$stu[]=’忽悠’;
$stu[]=’作弊’;
$stu[]=’贫嘴’;
$stu[]=’假唱’;
不写键,默认key 为从0开始,依次递增,来自动分配,
三、增删改查;都是通过键来进行操作,
$arr = array ( ‘产品狗‘,’设计猫‘,’age‘ = 28,)
1、 增
$arr[]=’ key’=>’value’//也可以不写key,
2、删
$arr[key]//指定key直接删
键的增长不受删除操作的影响.就是说,把数组里的一个键值对删了,但是这个key没有消失,只是值没了
3、改
$arr[key]// 指定key直接赋值覆盖
4、查
$arr[key]// 指定key直接找
四、二维数组;就是数组里嵌套了另一个数组
$stu1 = array( value1 , value2, value3 ...)
$stu2 = array($stu1, value2, value3 ...)
$stu2,就是一个二维数组
如何在2里找到1里的值$stu2[key1][key2], key 1代表$stu1在stu2里的key,key 2代表要找的值在stu1里的key
五、分类;PHP中键可以是字符串也可以是数组
1、 索引数组;键是纯数字
2、 关联数组;键不是纯数字。。。。
六、循环
1、 for循环,适合键为数字且有规律的数组
$arr=array('春','夏','秋','冬');
for ($i = 0; $i < count($arr);$i++) {
echo $arr[$i];
}
或效率更高的
for ($i = 0,$len= count($arr);$i <$len; $i++) {
echo $arr[$i];
}
2、 forerch
$arr=array('春','夏','秋','冬');
foreach ($arr as $k=>$v) {
echo $k,$v;
}
as;属于;把arr里的数据分配给k和v,k代表key,v代表value
或
foreach ($arras $v) {
echo $v;
}
简写,不要key,默认要value
七、游标;在数组内部,有一个指针,指针指着某一个单元,没循环一个单元,指针往尾部移动一位,在没有对数组进行操作的时候,为0.
1、
current — 返回数组中的当前单元
mixed current ( array &$array
)
end()- 将数组的内部指针指向最后一个单元
key()- 从关联数组中取得键名
each()- 返回数组中当前的键/值对并将数组指针向前移动一步,返回数组
$arr=array(1,2,3,0,5);
for ($i = 0; $i <=count($arr); $i++) {
echo $arr[$i];
}
这样会报Notice: Undefinedoffset:因为到0的时候,0默认为false,退出
$arr=array(1,2,3,0,5);
while ($arr2=each($arr)){
echo $arr2[0],'`````',$arr2[1];
}
其中;0为arr的键.1为arr的值
prev()- 将数组的内部指针倒回一位
reset()- 将数组的内部指针指向第一个单元,归零
next()- 将数组中的内部指针向前移动一位
在foreach开始时,会自动把游标指针归零
八、list;这不是真正的函数,而是语言结构,意为,她里面没有数据,只是一个方法、工具
1、 简单快捷的把默认下标数组里的值赋给变量
$arr=array('春','夏','秋','冬');
list($chun,$xia,$qiu,$dong)=$arr;
echo $chun ,$xia,$qiu,$dong;
2、 把有下标数组里的值赋给变量
$arr=array(1=>'春',2=>'夏',3=>'秋');
list($chun ,$xia,$qiu)=$arr;
echo $chun ,$xia,$qiu;//打印null,春,夏
(1)、先对应
在list中,按,逗号隔开的顺序,从左到右,分别对应右侧的数组(如$arr)
$arr[0], $arr[1], $arr[2]…$arr[n].
如果要对应的$arr[x]不存在,则当成null处理
$chun === $arr[0]
$xia === $arr[1]
$qiu === $arr[2]
(2)、再赋值
赋值的时候顺序是从右往左依次赋值,就是这个数组是先创建下标大的数据
$qiu === $arr[2] ===夏
$xia === $arr[1] ===春
$chun === $arr[0] ===null
- PHP初学之数组
- PHP初学之数组函数
- PHP 数组初学小记
- c++初学之数组
- PHP初学之前言
- PHP初学之语法
- PHP初学之变量
- PHP初学之常量
- PHP初学之字符串
- PHP初学之MySQL
- 初学PHP之路
- 初学PHP 之 简介
- Java基础初学之数组
- PHP初学之防水计数器
- 初学php之常量定义
- PHP初学之运算符
- PHP初学之控制结构
- PHP初学之超全局变量
- window下用android-ndk-r9d编译.so文件之mutex in namespace 'std' does not name a type
- adb调试工具的使用
- 【DP】HDU2084数塔
- ZOJ 3924 Musical Notes
- caffe for windows 训练cifar10
- PHP初学之数组
- bzoj2243 染色 树链剖分
- 编写跨浏览器的javascript代码必备[js多浏览器兼容写法]
- postgres常用命令
- CVS,GIT,Mercurial和SVN比较
- java static 放在哪
- 调用本地的应用程序
- PHP初学之数组函数
- delphi使用VB的dictionary对象