【day07】php
一.数组(Array)
1.数组:一组数据的集合
2.数组的分类:
索引数组:键名称是整数,编号从0开始
关联数组:键名称是字符串
3.定义一维数组
(1) $变量名称 =array([[$key=>]$value]);
(2) $数组名称[[$key]]=$value;
(3) [] 替代 array() PHP5.4以上
例如: $arr=array('a','b','c');
$arr=['a','b','c'];
说明:
a.数组的键名称只有整型,字符型两种
b.数组的成员值可以任意数据类型
c.数组的键名称如果省略,那以连接整数作为键名称,编号从0开始,即索引数组
d.如果数组的键名称相同,后面的值覆盖前面的值
4.数组的键名称的类型
(1)数组中第一个省略的键名称,并且之前的数组中的成员值对应的键名称都是负数,该键名称的编号是0.
(2)数组中第一个省略的键名称,并且之前的数组中的成员值对应的键名称有正数,负数,该键名称的编号是最大值+1.
(3)数组中键名称是浮点型转为整型,向下取整
(4)数组中键名称合法的数字字符串,如果数值整数转为整型,如果数值是浮点型该字符串
(5)数组中键名称是布尔,true 转 1, false转为0
(6)数组中键名称是null 转为空字符串
5.数组访问和修改
(1)数组访问
a.输出数组中的某一个值
echo $数组名称[$key];
b.循环遍历数组中的每个值
foreach($数组名称 as $key=>$value){
...
}
说明:关联数组或没规律的索引数组用foreach 实现循环遍历
(2)修改
$数组名称[$key]=$value;
说明:键名称存在修改,键名称不存在添加
6.数组的函数库
(1)安装
(2)
a. count/sizeof:获得对象或数组的个数
b. join 别名implode: 将一个一维数组 的值转化为字符串
格式:string join ( string $glue , array $arr )
c.explode: 使用一个字符串分割另一个字符串为数组
array explode ( string $delimiter ,string $string [, int $limit ] )
说明:$limit 为正数 分割值个数,为负值省略的字符个数
d. 数组的指针函数
current:数组的指针指向当前的成员值,并返回该值
next:数组的指针指向下一个的成员值,并返回该值
prev:数组的指针指向上一个的成员值,并返回该值
reset:数组的指针指向第一个成员值,并返回该值
end:数组的指针指向最后一个的成员值,并返回该值
e.
in_array:判断变量是否是数组中的值
bool in_array ( mixed $needle ,
array $haystack [, bool $strict = FALSE ] )
说明:$strict为true $needle在$haystack中的值进行严格比较,值和类型都有等
array_key_exists:判断变量是否是数值中的键名称
f.
array_push:在数组的尾部添加一个或多个成员值,并返回新数组的长度
array_unshift:在数组的头部添加一个或多个成员值,并返回新数组的长度
array_pop:在数组的尾部删除一个成员值,并返回该值
array_shift:在数组的头部删除一个成员值,并返回该值
g.
array_map:将回调函数作用到给定数组的单元上
7.多维数组:数组中的成员值又数组
最新文章
- Lua数据持久化
- 节点NODE
- js 二维码生成 插件
- Visual Studio 2015完全离线安装
- [POJ 3370] Halloween treats
- myeclipse spket spket-1.6.23.jar 破解安装教程
- Qt自定义sleep延时函数(巧妙的使用时间差,但这样似乎CPU满格,而不是沉睡)
- Android上使用OpenglES2.0遇到的一点问题
- Java 反射 分析类和对象
- Unity实现用户条款弹窗及登录
- 1.1初识python
- VMware ESXI 6.5 安装及配置
- VMware配置Linux中APPache服务器
- 项目的整体框架,以及Topology的设计
- Python实现机器学习算法:朴素贝叶斯算法
- JQ_插件开发
- 删除sql server用户时报15138错误
- java-request与response编码问题
- 使用迭代法穷举1到N位最大的数
- Java HashSet的元素内容变化导致的问题
热门文章
- 什么是uWSGI、WSGI、uwsgi、wsgiref、werkzeug
- Android开发笔记:Android开发环境搭建
- python有哪些优点跟缺点
- Codeforces Round #599 (Div. 2) B2. Character Swap (Hard Version) 构造
- csrf攻击与csrf防御
- pytest框架之mark标签
- Apollo的基本概念和集成实战
- MySQL 中的字符串类型
- 诚聘.NET架构师、高级开发工程师(2019年8月29日发布)
- java基础(14):Eclipse、面向对象、自定义数据类型的使用