【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__()构造方法中,除了私有属性,其他的都是公有属性了,其实这是 ...
随机推荐
- Sharding-JDBC:单库分表的实现
剧情回顾 前面,我们一共学习了读写分离,垂直拆分,垂直拆分+读写分离.对应的文章分别如下: Sharding-JDBC:查询量大如何优化? Sharding-JDBC:垂直拆分怎么做? 通过上面的优化 ...
- 【转】oracle中的NULL、''(空字符串)以及'_'(空格)
在Oracle中使用null,''(空字符串),'_'(空格)时,有没有遇到问题?产生疑惑? 1.NULL和''(空字符串)是一个意思 注:为了便于区分空字符串和空格,下面的示例均以'_'代表空格. ...
- 【学习笔记】动态规划—各种 DP 优化
[学习笔记]动态规划-各种 DP 优化 [大前言] 个人认为贪心,\(dp\) 是最难的,每次遇到题完全不知道该怎么办,看了题解后又瞬间恍然大悟(TAT).这篇文章也是花了我差不多一个月时间才全部完成 ...
- ef core SoftDelete Multi-tenancy 软删除、多租户实现 Global Query Filters
ef core提供了Global Query Filters特性来实现多租户与软删除,收集了一些实现方法. 最简单的例子时微软官方的特性解释. https://docs.microsoft.com/e ...
- java高并发系列 - 第8天:线程组
线程组 我们可以把线程归属到某个线程组中,线程组可以包含多个线程以及线程组,线程和线程组组成了父子关系,是个树形结构,如下图: 使用线程组可以方便管理线程,线程组提供了一些方法方便方便我们管理线程. ...
- 用AI思维给成本降温,腾讯WeTest兼容性测试直击底价!
WeTest 导读 当AI成为各行业提高产业效率的动能,很多人开始疑惑,这架智能化的“无人机”何时在移动应用测试中真正落地?在今年的国际数码互动娱乐博览会(ChinaJoy)上,腾讯WeTest给出了 ...
- 如何给HTML页面的文本设置字符和单词间距
设置字符和单词间距介绍 属性名 单位 描述 letter-spacing px 设置字符间距 word-spacing px 设置单词间距 letter-spacing设置字符间距 letter-sp ...
- Java 线程与多线程
Java是一门支持多线程的编程语言! 什么是进程? 计算机中内存.处理器.IO等资源操作都要为进程进行服务. 一个进程上可以创建多个线程,线程比进程更快的处理单元,而且所占用的资源也小,多线程的应用也 ...
- 获取本设备IP地址
获取本设备(Android.PC)IP地址 public string GetLocalIP() { try { string HostName = Dns.GetHostName(); //得到主机 ...
- iOS 常用算法之设计一个算法,验证某字符是否为合法IPV4字符
浅析 : 一个IPV4字符由3个大于0小于255的数字 以及 3个点构成, 所有我们需要判断小数点数量是否满足条件, 以及小数点隔开的每部分是否满足条件即可. 思路: 1. 校验是否有3个小数点; 2 ...