数组就是一个键值对组成的语言结构,键类似于酒店的房间号,值类似于酒店房间里存储的东西。

PHP有两种数组:索引数组、关联数组。

索引和关联两个词都是针对数组的键而言的。

索引数组

先介绍下索引数组,索引数组是指数组的键是整数的数组,并且键的整数顺序是从0开始,依次类推---赋值有三种方式:

第一种:用数组变量的名字后面跟一个中括号的方式赋值,当然,索引数组中,中括号内的键一定是整数。比如,$arr[0]='苹果';

第二种:用array()创建一个空数组,使用=>符号来分隔键和值,左侧表示键,右侧表示值。当然,索引数组中,键一定是整数。比如,array('0'=>'苹果');

第三种:用array()创建一个空数组,直接在数组里用英文的单引号'或者英文的双引号"赋值,数组会默认建立从0开始的整数的键。比如array('苹果');这个数组相当于array('0'=>'苹果');

for循环可以将索引数组里的所有值都访问到,下面我们展示下,用for循环访问索引数组里的值。

foreach循环可以将数组里的所有值都访问到,下面我们展示下,用foreach循环访问索引数组里的值。

关联数组

关联数组是指数组的键是字符串的数组。

关联数组赋值有两种方式:

第一种:用数组变量的名字后面跟一个中括号的方式赋值,当然,关联数组中,中括号内的键一定是字符串。

比如,$arr['apple']='苹果';

第二种:用array()创建一个空数组,使用=>符号来分隔键和值,左侧表示键,右侧表示值。当然,关联数组中,键一定是字符串。

比如,array('apple'=>'苹果');

用数组变量的名字后跟中括号+键的方式来访问数组中的值,键使用单引号或者双引号括起来。

foreach循环可以将数组里的所有值都访问到,下面我们展示下,用foreach循环访问关联数组里的值。


												

PHP学习(数组)的更多相关文章

  1. php学习-数组(一)

    数组函数可以对大量性质相同的数据进行存储,排序,插入及删除等操作. 学习任务: 声明数组,输出数组,遍历数组,查询数组中指定元素,获取数组中的最后一个元素. 删除数组中重复的元素.统计数组中元素的个数 ...

  2. Shell脚本学习-数组

    跟着RUNOOB网站的教程学习的笔记 Shell数组 数组中可以存放多个值,Bash Shell只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与PHP类似). 与大部分编程语言类似,数 ...

  3. 09-java学习-数组-冒泡排序-选择排序-数组工具类编写-查找-扩容

    数组的排序算法 查找算法 数组协助类Arrays的学习和使用 数组的扩容

  4. c++学习-数组

    int a[10]; //是个元素,在windows下回报错,linux会输出一个随机数 int a[10]={1,2}; //初始化,其他的为0 数组越界: 为了调高效率, 编译器不会对数组越界做检 ...

  5. Knockout.Js官网学习(数组observable)

    前言 如果你要探测和响应一个对象的变化,你应该用observables. 如果你需要探测和响应一个集合对象的变化,你应该用observableArray . 在很多场景下,它都非常有用,比如你要在UI ...

  6. Scala学习——数组/映射/元组

    [<快学Scala>笔记] 数组 / 映射 / 元组 一.数组 1.定长数组 声明数组的两种形式: 声明指定长度的数组 val 数组名= new Array[类型](数组长度) 提供数组初 ...

  7. Java学习-数组

    1.数组的是Object的直接子类,它属于“第一类对象”,但是它又与普通的java对象存在很大的不同,类名为:[I 一维数组:[I 二维数组:[[I 三维数组:[[[I 2.[代表了数组的维度,一个[ ...

  8. java学习——数组

    元素类型[] 数组名 = new 元素类型[元素个数或数组长度]; array 为引用数据类型|-数组数据类型 | 内存结构:程序在运行时,需要在内存中的分配空间.为了提高运行的效率,有对空间进行不同 ...

  9. Java小知识点学习--------数组和位运算小知识点

    位运算符: >>>无符号右移运算符,无符号右移的规则和右移的规则同样,仅仅是在填充时,无论原来是正数还是负数都用0来补充. 数组: arr1=arr2;  此时两个数组变量都会同一时 ...

  10. Scala学习---数组

    1.编写一段代码,将a设置为一个n个随机整数的数组,要求随机数介于0(包含)和n(不包含)之间 /** * Created by vito on 2017/1/11. */ object ex1 { ...

随机推荐

  1. Nginx的几个重要模块

    ngx_http_ssl_module 让Nginx可以支持HTTPS的模块,此模块下的大多数指令都应用在http,server上下文 ①ssl on | off; 是否开启ssl功能 ②ssl_ce ...

  2. 物理机多磁盘u盘安装centos

    材料:一枚u盘,一块120G固态硬盘和一块500G的硬盘的华硕笔记本电脑,原系统为windows10 需求:将centos7.5系统安装到固态硬盘,原系统不要了 遇到的问题:开机后进入不了装机界面 解 ...

  3. Ionic 发布Release 版本

    1.生成releases 版本  cordova build android --release 如果你在生成release版本出错,请修改build.gradle 2.生成签名文件 生成成功后会在G ...

  4. [转]Sql Server Alter语句

    原文链接:http://www.cnblogs.com/yoolonet/archive/2010/12/10/1884782.html 在修改Sql Server表结构时,常用到Alter语句,把一 ...

  5. 深入浅出 Java Concurrency (20): 并发容器 part 5 ConcurrentLinkedQueue[转]

    ConcurrentLinkedQueue是Queue的一个线程安全实现.先来看一段文档说明. 一个基于链接节点的无界线程安全队列.此队列按照 FIFO(先进先出)原则对元素进行排序.队列的头部 是队 ...

  6. PAT甲级——A1012 The Best Rank

    To evaluate the performance of our first year CS majored students, we consider their grades of three ...

  7. [Day6] Nginx 进阶模块

    一. 使用变量防盗链referer模块 功能:通过验证referer请求头是否合法,来拒绝非正常的网站访问我们站点的资源 思路:通过referer模块,用invaild_refereri变量根据配置判 ...

  8. hibernate 注释多表 级联操作

    一对多模型(单向) 说明: 一个客户对应多个地址,通过客户可以获得该客户的多个地址的信息.客户和地址是一对多的关系,并且客户与地址是单向关联的关系. 映射策略 # 外键关联:两个表的关系定义在一个表中 ...

  9. JasperReports报表区段14

    我们将在本章开始,一个简单的报表模板的结构看.依样画葫芦JasperReports的结构报表模板归类到多个区段.部分是有规定的高度,并且可以包含像直线,矩形,图像或文本字段对象报表的部分. 通过提供的 ...

  10. 矩阵快速幂求Fibonacci

    原理 我们取矩阵A 则 F1=F2=1;则可以轻易求出F(i) #define maxn 2 #define mo 1000000007 struct Matrix{ long long a[maxn ...