php学习四:数组(一)
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学习四:数组(一)的更多相关文章
- es6 学习四 数组的学习
1. Array.from() 语法: Array.from(arrayLike[, mapFn[, thisArg]]) arrayLike 类数组对象 mapFn 如果指定了该参数,新数组中的每个 ...
- Python学习之数组类型一:
Python学习之数组类型一: Numpy中的向量与矩阵: 1.创建: 向量.矩阵均由array函数创建,区别在于向量是v=array( [逗号分隔的元素] ), 矩阵是M=array( [[ ]] ...
- Android JNI学习(四)——JNI的常用方法的中文API
本系列文章如下: Android JNI(一)——NDK与JNI基础 Android JNI学习(二)——实战JNI之“hello world” Android JNI学习(三)——Java与Nati ...
- [ 转载 ] Java基础12--基础学习总结——数组
java基础学习总结——数组 一.数组的基本概念 数组可以看成是多个相同类型数据组合,对这些数据的统一管理. 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量. 数组的 ...
- ZigBee学习四 无线+UART通信
ZigBee学习四 无线+UART通信 1) 协调器编程 修改coordinator.c文件 byte GenericApp_TransID; // This is the unique messag ...
- day 83 Vue学习四之过滤器、钩子函数、路由、全家桶等
Vue学习四之过滤器.钩子函数.路由.全家桶等 本节目录 一 vue过滤器 二 生命周期的钩子函数 三 vue的全家桶 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 Vue的过滤 ...
- TweenMax动画库学习(四)
目录 TweenMax动画库学习(一) TweenMax动画库学习(二) TweenMax动画库学习(三) Tw ...
- PHP学习之中数组-遍历一维数组【2】
在PHP学习之中数组[1]中学会怎么创建一个数组,如果PHP学习之中数组[1]中的元素多的话,我们访问元素又是一个问题了,下面我们就使用for语句while,foreach来遍历我们的数组: < ...
- SVG 学习<四> 基础API
目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...
- SCARA——OpenGL入门学习四(颜色)
OpenGL入门学习[四] 本次学习的是颜色的选择.终于要走出黑白的世界了~~ OpenGL支持两种颜色模式:一种是RGBA,一种是颜色索引模式. 无论哪种颜色模式,计算机都必须为每一个像素保存一些数 ...
随机推荐
- php爬虫实践
之前用nodejs的cheerio来做,不过nodejs的异步回掉太恶心了,受不了. 后来发现了php的htmlpagedom库,类似jquery的选择器语法,而且支持中文. 安装 composer ...
- VS2008 express + opencv配置
刚开始接触opencv,不是很熟悉,配置过程主要参考了这篇博客,大家可以去看看 http://www.cnblogs.com/micky-zhou/archive/2012/08/06/2624433 ...
- u-boot 2011.09 使用自己的board 以及config.h
一个新的方案,用的UBOOT 可能和上一个方案是同一个,但是配置有可能不一样,今天记录一下通过修改配置文件使用新的 board 文件以及 config.h 进入 u-boot 2011.09 // 打 ...
- http://blog.csdn.net/ouyang_peng/article/details/8732644
http://blog.csdn.net/ouyang_peng/article/details/8732644
- RP2833 FPGA对应串口标识
U41 FPGA-TXD0 /dev/ruart0 FPGA-RXD0 U40 FPGA-TXD1 /dev/ruart1 FPGA-RXD1
- [Javascript]右侧悬浮框
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- ubuntu下配置java环境
配置JDK环境 下载 登录oracle的网站去下载JDK7 http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads ...
- MySQL 性能优化的最佳 20+ 条经验
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数 ...
- C语言 字面量
在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(notation). 几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数.浮点数以及字符串: 而有很多也对布尔类 ...
- Windoows窗口程序五
程序执行机制 过程驱动-程序的执行过程是按照预订好的顺序执行. 事件驱动-程序的执行是无序,用户可以根据需要随机触发相应的事件. Win32窗口程序就是采用事件驱动方式执行,也就是消息机制. 当系统通 ...