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. PAT T1001 Battle Over Cities-Hard Version

    按题意枚举每个点,建立缺少该点情况下的最小生成树,取权值最大的~ #include<bits/stdc++.h> using namespace std; ; const int inf= ...

  2. Node Sass does not yet support your current environment: Linux 64-bit with Unsupported runtime

    环境: ubuntu18 webstorm vue项目 报错原因: 缺少相关依赖 解决方法: npm rebuild node-sass 还未解决: npm uninstall --save node ...

  3. 第二天python

    1.pycharm的安装: 1.先去官网下载软件:https://www.jetbrains.com/pycharm/download/#section=windows然后进行下一步,下一步操作既可以 ...

  4. Linux 7 和 CentOS 7 收到重要内核安全更新

    导读 Red Hat 和 CentOS 宣布了其 Red Hat Enterprise Linux 7 和 CentOS Linux 7 操作系统系列重要内核安全更新的可用性. 据悉,这些更新解决了两 ...

  5. 第2节 Scala中面向对象编程:7、继承的概念以及override和super关键字;8、isInstanceOf 和 asInstanceOf关键字

    6.3.   Scala面向对象编程之继承 6.3.1.     Scala中继承(extends)的概念 Scala 中,让子类继承父类,与 Java 一样,也是使用 extends 关键字: 继承 ...

  6. Linu计划任务/crontab命令

    周期性任务计划 相关程序包: cronie:主程序包,提供了crond守护进程及相关辅助工具 cronie-anacron:cronie的补充程序:用于监控cronie任务执行状况:如cronie中的 ...

  7. C++ — 后缀表达式转表达式树

    2018-07-21 16:57:26 update 建立表达式树的基本思路:方法类似由下而上建立堆的思想,所以时间复杂度为O(n),这样算法就会变得很简单,只用考虑处理需要入栈的节点和栈中的节点即可 ...

  8. vue cli3.0打包

    1.vue cli3.0需要在项目根目录下配置webpack  包括反向代理以及打包文件路径 const webpack = require("webpack"); module. ...

  9. mysql判断数据库或表是否存在

    (1) 判断数据库存在, 则删除:       drop database if exists db_name;(2) 判断数据表存在, 则删除: drop table if exists table ...

  10. SpringCloud实战——(3)通过RESTful方式调用模块的方法

    在项目中创建一个类,编写如下内容: package com.f*iservice.controller; import org.springframework.web.bind.annotation. ...