1、定义

$attr=array();                            //标准定义方式

$attr=[1,2];

$attr[0]="hello";                         //赋值定义方式

2、分类

1)索引数组

索引是从0开始的整数,索引自动建立

例:$attr=array(1,2,3);                                                //索引自动建立,索引0的值为1,索引1的值为2,索引2的值为3

2)关联数组

索引是自定义的字符串

例:$attr=array("one"=>1,"two"=>2);                           //"one"代表的是索引为自定义的字符串,“1”代表的是该索引对应的值

  echo $attr["one"];                                                  //根据索引取值

3、遍历数组

1)for循环遍历                   //适用索引数组

for($i=0;$i<count($attr);$i++){

  <pre>                                 //可使数组内元素分行显示

  echo $attr[$i];

  </pre>

}

2)foreach循环遍历                   //适用索引和关联数组

foreach($attr as $k=>$v){

  echo $k;

  echo $v;

}

foreach($attr as $v){

  echo $v;

}

3)each()函数和list()函数结合遍历数组

each()函数:返回数组中当前的键/值对并将数组指针向后移动一步;

例:$arr=each($attr);

list()函数:将数组中的元素赋值给一组变量,该函数写在等号左侧;

例:list($a,$b)=$arr;

each()函数和list()函数结合

例:$attr=array("one"=>11,"two"=>22);

  while(list($k,$v)=each($attr)){

    $k;                           //数组元素的索引;

    $v;                           //数组元素的值;

  }

4)指针遍历数组

例:$attr=array("one"=>"11","two"=>"22");

  do{

    key($attr);                          //数组元素的索引;

    current($attr);                    //数组元素的值;

  }while(next($attr))                     //向下调一个

4、数组函数

1)in_array(4,$attr);                      //判断某个值是否在数组中

2)array_reverse($attr);                //翻转数组

3)array_unique($attr);                //去重

4)count($attr);                            //取数组长度

5)unset($attr[1]);                        //删除索引号为1的元素

6)array_values($attr);                //重新索引,打乱的索引重新排

7)array_merge($attr,array(5,6));   //合并数组

8)array_push($attr,"hello");           //向数组中添加一个元素

9)array_pop($attr);                        //弹出数组中的一个元素

PHP数组——定义,类型,遍历数组,数组函数的更多相关文章

  1. 集合 数组 定义 转换 遍历 Arrays API MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  2. php数组声明、遍历、数组全局变量使用小结

    数组的本质:管理和操作一组变量,成批处理,下面为大家介绍下数组的分类.数组的分类及使用说明,感兴趣的朋友可以了解下哈   php教程:数组声明,遍历,数组全局变量  <? /* * 一.数组的概 ...

  3. linux shell编程中的数组定义、遍历

    代码如下: 数组定义法1: arr=( ) # 注意是用空格分开,不是逗号!! 数组定义法2: array array[]="a" array[]="b" ar ...

  4. 数组(定义、遍历、冒泡排序、合并和Join 方法)

    一.数组的定义 1.理解:数组指一组数据,有序的数据,可以一次性存储多个数据,将多个元素(通常统一类型)按照一定的顺序排列放到一个集合里 2.通过构造函数创建数组: var 数组名=new Arrar ...

  5. C语言数组:C语言数组定义、二维数组、动态数组、字符串数组

    1.C语言数组的概念 在<更加优美的C语言输出>一节中我们举了一个例子,是输出一个 4×4 的整数矩阵,代码如下: #include <stdio.h> #include &l ...

  6. 410 for 循环 运算 改变循环的控制流 死循环 遍历数组 定义方法 有名函数匿名函数 定义函数的方法取值 date math 局部变量 函数 局部与全局变量 次幂/随机数/取绝对值/向上取整/平方根

    for(1.表达式1;2.表达式2;3.表达式3){ 4.循环体语句; } 先执行1 ,在执行2, 表达式, 如果2结果为false,退出循环 如果2是true 执行4 在执行3 执行2 举例打印1- ...

  7. 2016/3/20 数组定义 数组遍历 超全局数组 数组元素设置(in_array() 、array_reverse()、count()、array_unique()、unset()、array_values、array_merge、array_push) 列表实例

    一.数组定义 php数组与其他语言的数组的不同: 其他例如java语言 :同一种类型数据的集合. php:数组可以存储任何类型的数据.同一个数组中可以放int类型也可以放string类型 ①索引数组的 ...

  8. 200-Java语言基础-Java编程入门-006 | Java数组定义及使用(引用数据类型)

    一.数组概述和定义格式说明 为什么要有数组(容器): 为了存储同种数据类型的多个值 数组概念: 数组是存储同一种数据类型多个元素的集合.也可以看成是一个容器. 数组既可以存储基本数据类型,也可以存储引 ...

  9. 在 delphi (Object Pascal 语言)中,使用 array 关键字进行数组定义。

    如果需要定义二维数组可以采取以下定义形式: 一.静态数组定义 静态数组定义,通常用于数组元素的数目确定的情况.定义形式如下: 示例: 1 2 3 4 5 6 7 8 9 10 11 type   // ...

  10. 12Java基础_数组定义格式/动态初始化/静态初始化

    /* Java数组 格式一: int[] array; 格式二: int array[]; 数组初始化: 为数组中的元素分配内存空间 动态初始化: int[] array=new int[数组长度] ...

随机推荐

  1. 微信小程序 列表倒计时

    最近要实现一个列表倒计时的功能,写了个demo 展示图 <view class="center colu"> <view class="time&quo ...

  2. 14 JavaScript Window对象

    Window对象表示一个浏览器窗口或者一个框架. 在客户端JavaScript中,window对象是全局对象,所有的表达式都在当前的环境中计算. Window对象的子对象: JavaScript do ...

  3. 学习笔记(6)- pytext训练会话助手

    https://github.com/facebookresearch/pytext https://pytext.readthedocs.io/en/master/ https://pytext.r ...

  4. kafka 日志策略

    日志查看: usr/local/kafka/kafka_2.11-2.4.0/bin/kafka-run-class.sh kafka.tools.DumpLogSegments --files /t ...

  5. electron-edge-js 环境搭建

    确保nodejs环境 为 10.X  (因为edge的编译需要node对应版本的支持,太新的node不包含对应edge的编译) 1.创建工程2.使用npm init初始化程序信息3.使用npm ins ...

  6. centos7搭建svn服务器及客户端设置

    centos7搭建svn服务器及客户端设置 centos7貌似预装了svn服务(有待确认),因此我们直接启动该服务即可 一.svn服务端配置(服务器IP假设为192.168.100.1) 步骤1:创建 ...

  7. 一文解读XaaS (转)

    艾克赛斯???别慌,读完你就知道啦~ 服务和云服务 了解Xaas云服务,不妨从了解服务开始. “服务”在本质上是一种租赁,它对资源的占用方式是“为我所用”而非“为我所有”,对资源的消费模式是按需付费而 ...

  8. 对简易网页版注册系统的制作(连接MySQL数据库)

    一.基本需求 二.设计思路: 1.首先创建一个与数据库数据属性对应的类User,并添加get和set方法. 2.之后建立另一个类UserDao用于生成一条完整的数据对象. 3.再建立一个类DButil ...

  9. USACO 2019 December Contest 随记

    Forewords 今年 USACO 的比赛变化挺大的,有部分分了,而且不再是固定十个点了(部分分只说这几个点满足这几个性质,以为十个点的我还高兴了一会,一提交,...),除此之外居然赛后还排名了.这 ...

  10. 分析配置DispatcherServlet类时load-on-startup标签作用

    <servlet> <servlet-name>DispatcherServlet</servlet-name> <servlet-class>org. ...