【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.多维数组:数组中的成员值又数组
【day07】php的更多相关文章
- 面向对象【day07】:面向对象使用场景(十)
本节内容 1.概述 2.知识回顾 3.使用场景 一.概述 之前我们学了面向对象知识,那我们在什么时候用呢?不可能什么时候都需要用面向对象吧,除非你是纯的面向对象语言,好的,我们下面就来谈谈 二.知识回 ...
- 面向对象【day07】:知识点回顾(十一)
本节内容 1.self关键字 2.封装 3.继承 4.静态方法 一.self关键字 作用:调用当前方法的对象 1 2 3 4 5 6 7 8 9 10 11 12 13 14 class Foo: ...
- 面向对象【day07】:析构函数(六)
二.析构函数 一.概述 析构函数,第一次听说这个函数的名称,那这个函数到底是干嘛的呢?什么才是析构函数呐? 定义:在实例销毁的时候调用的函数 二.析构函数定义 2.1 定义 1 2 3 4 5 6 7 ...
- 面向对象【day07】:类的继承(七)
本节内容 1.概述 2.类的继承 3.总结 4.练习 一.概述 之前我们说到了类的公有属性和类的私有属性,其实就是类的封装,下面我们来讲讲继承,是面向对象的第二大特性. 面向对象编程 (OOP) 语言 ...
- 面向对象【day07】:新式类和经典类(八)
本节内容 1.概述 2.类的多继承 3.经典类VS新式类 4.总结 一.概述 在python还支持多继承,但是一般我们很少用,有些语言干脆就不支持多继承,有多继承,就会带来两个概念,经典类和新式类,下 ...
- 面向对象【day07】:面向对象概念介绍(二)
本节内容 1.概念 2.特性 3.面向对象介绍 一丶概念 1.面向对象编程 OOP(Object-Oriented Programming)编程是利用“类”和“对象”来创建各种模型来实现对真实世界的描 ...
- 面向对象【day07】:类的实例化过程剖析(三)
本节内容 1.概述 2.类的语法 3.总结 一.概述 之前我们说关于python中的类,都一脸懵逼,都想说,类这么牛逼到底是什么,什么才是类?下面我们就来讲讲,什么是类?它具有哪些特性. 二.类的语法 ...
- 面向对象【day07】:类的特性介绍(四)
本节内容 1.概述 2.访问属性 3.私有属性 4.总结 一.概述 在上篇博客中我们已经讲了一些关于类的知识,我们来回顾以下: 定义类(class dog(object))-> 实例化(d = ...
- 面向对象【day07】:面向对象引子(一)
本节内容 概述 面向对象引子 面向过程介绍 一.概述 很对人都不理解编程中的面向对象的概念,那我们先来说说面向对象的引子,由这个引子带领我们更好的理解面向对象的概念. 二.面向对象引子 你现在是一家游 ...
- 面向对象【day07】:类的属性(五)
本节内容 概述 公有属性 一.概述 前面我们讲了类的私有属性,现在我们来说说类的公有属性,这边很容易被人弄混淆,有人觉的,在__init__()构造方法中,除了私有属性,其他的都是公有属性了,其实这是 ...
随机推荐
- 移动端px自动转化为rem
注:不转换的px用大写PX代替 lib-flexible 作用:让网页根据设备dpr和宽度,利用viewport和html根元素的font-size配合rem来适配不同尺寸的移动端设备 安装:cnpm ...
- String的源码理解(未写完)
String本质上是一个char数组(jdk 9之后是byte数组),并且是一个声明为final的数组,并且String的不可变也是通过这种把数组声明为final来实现的 public final c ...
- rsync的简介及使用
1.rsync的基础概述 1.什么是备份 相当于给源文件增加一个副本,但是备份只会备份当前状态的数据,当你在写数据是,不会备份新写入的数据,除非自己手动在备份一次. 2.为什么要做备份 1.需要备份一 ...
- js正则高级函数(replace,matchAll用法),实现正则替换(实测很有效)
有这么一个文档,这是在PC端显示的效果,如果放在移动端,会发现字体大小是非常大的,那么现在想让这个字体在移动端能按照某个比例缩小,后台返回的数据格式是: <html> <head&g ...
- 如何查看PDF的坐标
有时候,我们明知道现状并不够科学.不够合理,但没有时间和条件去改变现状,还得硬要照着这种方式去维护,很是痛苦. 在程序生成文字报告通常使用docx,如果需要更通用.更灵活,还可以使用rtf,而前期设计 ...
- Educational Codeforces Round 76 (Rated for Div. 2) C. Dominated Subarray 水题
C. Dominated Subarray Let's call an array
- 第04组 Beta冲刺(2/5)
队名:new game 组长博客 作业博客 组员情况 鲍子涵(队长) 过去两天完成了哪些任务 验收游戏素材 学习Unity 2D Animation系统 基本做完了人物的各个动画 接下来的计划 冲击E ...
- Mybatis关联查询之一
MyBatis的关联查询之一对多,多对一 在关系型数据库中,我们经常要处理一对多,多对一和多对多的关系. 一对多,多对一 一.entity 实体类 public class SmbmsRole { p ...
- Java反射方法总结
1.得到构造器的方法 Constructor getConstructor(Class[] params) -- 获得使用特殊的参数类型的公共构造函数, Constructor[] getConstr ...
- 代码生成工具Database2Sharp的架构介绍
1)代码生成工具介绍 Database2Sharp是一款代码生成工具和数据库文档生成工具,该工具从2005年开始至今,一直伴随着我们的客户和粉丝们经历着过各种各样的项目开发,在实际开发中能带来效率的提 ...