1.  直接赋值方式:

①   索引数组:以索引来存储数据,内存不是连续的,但是js中的内存是连续的

代码如下:

$array[0] = "11";
$array[1] = "22";
print_r($array); //通过print_r()来打印数组
echo "<br>";

  

②   关联数组:以键的形式来存储数据,内存也是不连续的

代码如下:

$array2["name"] = "房明";

$array2["age"] = 18;

print_r($array2);

echo "<br>";

  

 2. 通过array来定义数组

可通过关键字array来定义数组,如果是一个空数组,则需要用array[]的方法来向数组中添加数据

代码如下:

$array3 = array(1,2,3,4,"德玛西亚");

print_r($array3);

echo "<br>";

$array4 = array();

$array4[] = 1; //通过array[]方式向数组中添加数据

$array4[] = 2;

$array4[] = 3;

$array4[] = 4;

print_r($array4);

echo "<br>";

  

 3. 遍历数组

①   遍历索引数组:for循环遍历,但php中的数组没有length属性,需要用到count个数

代码如下:

for($i=0;$i<count($array4);$i++) {  //count表示数组里面数值的个数,php里面没有数组长度

    echo $array4[$i];

}

  

 

②   遍历关联数组:使用foreach来遍历,还可遍历关联函数和索引函数的而混合体

代码如下:

foreach($array2 as $key => $obj){

    echo $key."=".$obj."<br>";

}

  

此时的foreach格式为(数组名 as 键 => 值);

4.list()

//按索引角标顺序来进行解构,但是角标必须从0开始,并且是连续的

//只对索引数组有效,当遇到关联数组会直接跳过

$array5 = array("name" => "zhangsan",0 => "lisi",1 =>"wangwu");
list($a,$b) = $array5;
echo $a." ".$b; //结果为lisi,wangwu

  

5.each()

//会返回第一个键值对的一个数组(索引和关联数组的混合形式),

//当第二次调用是,游标会自动到下一个,即第二个键值对数组;

$array6 = array("name" => "fangming",0 => "18", "sex" => "man");
$iem1 = each($array6);
print_r($iem1);
echo "<br>";
$iem2 = each($array6);
print_r($iem2);

  

6.list,each结合使用

list($a,$b) = each($array6);
echo $a.":".$b."<br>";

  

7.利用while循环结合list,each进行遍历

$array7 = array("name" => "fangming","age" => "18", "sex" => "man");
while(list($a,$b) = each($array7)){
echo $a.":".$b."<br>";
};

  

8.reset,重置数组,使游标返回第一位

reset($array7);

  

php学习四:数组(一)的更多相关文章

  1. es6 学习四 数组的学习

    1. Array.from() 语法: Array.from(arrayLike[, mapFn[, thisArg]]) arrayLike 类数组对象 mapFn 如果指定了该参数,新数组中的每个 ...

  2. Python学习之数组类型一:

    Python学习之数组类型一: Numpy中的向量与矩阵: 1.创建:  向量.矩阵均由array函数创建,区别在于向量是v=array( [逗号分隔的元素] ), 矩阵是M=array( [[ ]] ...

  3. Android JNI学习(四)——JNI的常用方法的中文API

    本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...

  4. [ 转载 ] Java基础12--基础学习总结——数组

    java基础学习总结——数组 一.数组的基本概念 数组可以看成是多个相同类型数据组合,对这些数据的统一管理. 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量. 数组的 ...

  5. ZigBee学习四 无线+UART通信

    ZigBee学习四 无线+UART通信 1) 协调器编程 修改coordinator.c文件 byte GenericApp_TransID; // This is the unique messag ...

  6. day 83 Vue学习四之过滤器、钩子函数、路由、全家桶等

    Vue学习四之过滤器.钩子函数.路由.全家桶等   本节目录 一 vue过滤器 二 生命周期的钩子函数 三 vue的全家桶 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 Vue的过滤 ...

  7. TweenMax动画库学习(四)

    目录            TweenMax动画库学习(一)            TweenMax动画库学习(二)            TweenMax动画库学习(三)            Tw ...

  8. PHP学习之中数组-遍历一维数组【2】

    在PHP学习之中数组[1]中学会怎么创建一个数组,如果PHP学习之中数组[1]中的元素多的话,我们访问元素又是一个问题了,下面我们就使用for语句while,foreach来遍历我们的数组: < ...

  9. SVG 学习<四> 基础API

    目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...

  10. SCARA——OpenGL入门学习四(颜色)

    OpenGL入门学习[四] 本次学习的是颜色的选择.终于要走出黑白的世界了~~ OpenGL支持两种颜色模式:一种是RGBA,一种是颜色索引模式. 无论哪种颜色模式,计算机都必须为每一个像素保存一些数 ...

随机推荐

  1. 【Unity】使用SceneManager加载/切换场景

    一.直接切换 老版的(已弃用!): Application.LoadLevel(int index); // 参数是场景编号 Application.LoadLevel(string name); / ...

  2. 欢迎使用markdowm编辑器

    欢迎使用Markdown编辑器写博客 [Mark一下CSDN用Markdown的写法而已] 本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown ...

  3. 【C#】BackgroundWorker类传递参数

    要传递多个不同类型的参数: private void Test(){ int a = 123; string b = "456"; bool c = true; Backgroun ...

  4. (转) eclipse安装lombok

    lombok的官方网址:http://projectlombok.org/ 1. lombok的安装: 使用lombox是需要安装的,如果不安装,IDE则无法解析lombox注解,有两种方式可以安装l ...

  5. JEECG常见问题大全征集

    大家还有什么问题.请跟帖,谢谢支持. .  JEECG常见问题大全征集 1. jeecg没有数据库脚本问题   jeecg不须要数据库脚本,在数据库创建好数据库.项目配置好数据源链接.会自己主动建表. ...

  6. ftp的主动模式active mode和被动模式 passive mode的配置和区别

    ftp的主动模式active mode和被动模式 passive mode的配置和区别 2017年05月08日 17:47:16 阅读数:21768 本文主要记录的是在linux上的区别,弄了一整天才 ...

  7. 基于Struts2.3.x+Spring3.2.x+Hibernate4.2.x+EasyUI1.3.4+Maven架构的示例程序

    基于Struts2.3.x+Spring3.2.x+Hibernate4.2.x+EasyUI1.3.4+Maven架构的示例程序 不知道为什么,保存的时候显示有一个连接为违禁内容,可能是…………. ...

  8. 【Spring boot】第一个项目 Springboot + mysql + hibernate

    今天公司要做一个小项目,好久没碰项目了(刷题好累...),听说spring boot很火,决定试一试.暂时就从mysql里面读数据好了,使用hiberante. 1.获取jar包. 从http://s ...

  9. android onSaveInstance方法

    为什么需要用到Activity状态保存, 如何用 ? 1)我们希望当前的Activity中的信息不会因为Activity状态的改变,而丢失.比如横竖屏的切换,突然来了个电话. 2) 借助Activit ...

  10. mssql 设置id自增 设置主键

    主键自增长列在进行数据插入的时候,很有用的,如可以获取返回的自增ID值,接下来将介绍SQL Server如何设置主键自增长列,感兴趣的朋友可以了解下,希望本文对你有所帮助     1.新建一数据表,里 ...