数组定义

  数组就是一个键值对组成的语言结构,键类似于酒店的房间号,值类似于酒店房间里存储的东西。PHP 中的数组实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。

定义数组 array()

  可以用 array() 语言结构来新建一个数组。它接受任意数量用逗号分隔的 键(key) => 值(value)对。

  array(  key =>  value
  , ...
  )
  // 键(key)可是是一个整数 integer 或字符串 string
  // 值(value)可以是任意类型的值

  最后一个数组单元之后的逗号可以省略。通常用于单行数组定义中,例如常用 array(1, 2) 而不是 array(1, 2, )。对多行数组定义通常保留最后一个逗号,这样要添加一个新单元时更方便。

  自 5.4 起可以使用短数组定义语法,用 [] 替代 array()

索引数组初始化

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

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

  先介绍下索引数组,索引数组是指数组的键是整数的数组,并且键的整数顺序是从0开始,依次类推。

索引数组赋值

  索引数组赋值有三种方式:

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

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

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

访问索引数组内容

  有的时候我们需要把数组中的内容也就是值取出来该怎么办呢?用数组变量的名字后跟的中括号中的键,来访问数组中的值。

  例如:

  $name = array('张三','李四');
  $name0 = $name['0'];
  print_r($name0);//结果为苹果

  上面代码的作用:先把一个数组$fruit第一个值取出来然后赋给一个变量$name0,最后输出变量值。

for循环访问索引数组里的值

  

for循环访问索引数组里的值

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

  例如:

 $name=array('张三','李四','王五');

 for($i=0; $i<3; $i++){

     echo '<br>数组第'.$i.'值是:'.$name[$i];

 }

foreach循环访问索引数组里的值

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

  例如:

 $name=array('张三','李四','王五');
foreach($name as $k=>$v){
echo '<br>第'.$k.'值是:'.$v;
}

关联数组初始化

  回顾下前面介绍的内容,PHP有两种数组:索引数组、关联数组。

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

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

关联数组赋值

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

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

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

访问关联数组内容

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

  比如:

 $fruit = array('apple'=>"苹果",'banana'=>"香蕉",'pineapple'=>"菠萝"); 

 $fruit0 = $fruit['banana'];

 print_r($fruit0);

  上面代码的作用:先把一个数组$fruit中键为banana字符串的值取出来然后赋给一个另一个变量$fruit0,最后输出变量值。

foreach循环访问关联数组里的值

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

 $fruit=array('apple'=>"苹果",'banana'=>"香蕉",'pineapple'=>"菠萝");
foreach($fruit as $k=>$v){
echo '<br>水果的英文键名:'.$k.',对应的值是:'.$v;
}

上一篇:PHP读书笔记(5)-结构语句

下一篇:PHP读书笔记(7)- 函数

PHP读书笔记(6)- 数组的更多相关文章

  1. [Clr via C#读书笔记]Cp16数组

    Cp16数组 一维数组,多维数组,交错数组:引用类型:P338的图非常的清楚地描述了值类型和引用类型在托管堆中的关系:越界检查: 数组初始化 数组初始化器: 四种写法 string[] names = ...

  2. 《疯狂Java:突破程序员基本功的16课》读书笔记-第一章 数组与内存控制

    很早以前就听过李刚老师的疯狂java系列很不错,所以最近找一本拿来拜读,再此做下读书笔记,促进更好的消化. 使用Java数组之前必须先对数组对象进行初始化.当数组的所有元素都被分配了合适的内存空间,并 ...

  3. C#温故知新:《C#图解教程》读书笔记系列

    一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...

  4. 《3D Math Primer for Graphics and Game Development》读书笔记1

    <3D Math Primer for Graphics and Game Development>读书笔记1 本文是<3D Math Primer for Graphics and ...

  5. 《javascript权威指南》读书笔记——第一篇

    <javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本 ...

  6. 《C#高级编程》读书笔记

    <C#高级编程>读书笔记 C#类型的取值范围 名称 CTS类型 说明 范围 sbyte System.SByte 8位有符号的整数 -128~127(−27−27~27−127−1) sh ...

  7. js读书笔记

    js读书笔记 基本类型的基本函数总结 1. Boolean() 数据类型 转换为true的值 转换为false的值 Boolean true false String 任何非空字符串 "&q ...

  8. 读书笔记:const和readonly、static readonly 那些事

    C#中表示不变的量(常量)的两种形式:const 和readonly const 是静态常量 readonly 是动态常量 严格的来讲:const 应该称为常量 而readonly 则应称为只读变量. ...

  9. C++ 11学习和掌握 ——《深入理解C++ 11:C++11新特性解析和应用》读书笔记(一)

    因为偶然的机会,在图书馆看到<深入理解C++ 11:C++11新特性解析和应用>这本书,大致扫下,受益匪浅,就果断借出来,对于其中的部分内容进行详读并亲自编程测试相关代码,也就有了整理写出 ...

随机推荐

  1. JAVA与图形界面开发(Applet应用程序、AWT库、Swing)

    Applet 1)简单说,Applet就是嵌入到网页中的小程序,Java代码. 2)编写Applet程序,要继承JApplet类,并根据自己需要覆写相关方法(init.start.stop.destr ...

  2. 在Windows上,如何卸载RabbitMQ服务

    打开运行->CMD->sc delete RabbitMQ 如果报错..... 打开运行->regedit 找到RabbitMQ节点,删掉即可.(右侧看到的都是启动服务时,需要的配置 ...

  3. POJ 1502 MPI Maelstrom(最短路)

    MPI Maelstrom Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 4017   Accepted: 2412 Des ...

  4. jquery easyui的layout

    1.创建一个布局:layout是一个容器,它有5个区域:north(北),south(南),east(东),west(西):center(中)-----------学习中文网地址 <body c ...

  5. AppDelegate 、UIApplication 的用法

    转载自  http://blog.chinaunix.net/uid-26768267-id-3300042.html //AppDelegate.h 头文件 #import <UIKit/UI ...

  6. css知识汇总

    <style type="text/css"> table{ border-collapse:collapse; } table, td, th{ border:1px ...

  7. Algorithms Part 1-Question 6- 2SUM Median-数和以及中位数问题

    本次有两个编程问题,一个是求两个数的和满足一定值的数目,另一个是求中位数. 2SUM问题 问题描述 The goal of this problem is to implement a variant ...

  8. HDU2544最短路(dijkstra)

    用dijkstra来练练手 #include<iostream> #include<stdio.h> #include<string.h> #include< ...

  9. HDU 4463 Outlets (最小生成树)

    题意:给定n个点坐标,并且两个点已经连接,但是其他的都没有连接,但是要找出一条最短的路走过所有的点,并且路线最短. 析:这个想仔细想想,就是应该是最小生成树,把所有两点都可以连接的当作边,然后按最小生 ...

  10. Eclipse添加小工具_打开当前文件所在文件夹

    CopyRight   yuhuashi http://www.cnblogs.com/chuyuhuashi/archive/2012/05/06/2485831.html 默认情况下使用eclip ...