PHP 数组浅析
PHP的数组具有如下特点:
1.数组初始化时无需指定长度;
2.数组中的元素无需相同类型;
3.数组的长度可变
4.可使用var_dump(参数)或者print_r( 参数) 函数查看数组变量。
5.数组内的元素可以通过一个key来对应一个元素:a.key可以是整数,字符串,也可以省略
b. 键相同时,后面的值会覆盖前值
c.键 "9" 会强制转换成 9
***当元素的内容添加了key的时候,无法用for循环输出其带key的内容
<?php
$arrayName = array('a'=>"aaa" ,"131","dsds","fdsfsdf","ewfefewf"); for ($i=0; $i <5 ; $i++) {
echo $arrayName[$i];
echo "<br>"; } ?>
6.给数组元素赋值时,如元素已存在,则为修改;如元素不存在,则为添加。
$names = array(
1=>"Billy", 3=>"Peter", "vip"=>"Steve"
);
$names[3]="Tim"; // 修改
$names[9]="Alan"; // 添加
$names["vip"]="William"; // 修改
$names["good"]="Bob"; // 添加
$names[]="Daniel"; // 添加
7.使用unset()函数删除数组元素:
$names = array(
1=>"Billy",
3=>"Peter",
"vip"=>"Steve"
);
unset($names["vip"]);
unset($names[3]);
$names[]="Eric";
print_r($names);
unset($names);//删除整个数组
8.常用的数组函数
count():数组元素个数;
max()最大 min()最小 array_sum()总和
in_array():是否存在某个值;
array_search():是否存在值并返回索引
array_key_exists():是否存在某个键;
array_keys():返回所有键于新数组;
array_values():返回所有值于新数组。
range()函数:指定范围快速生成数组:
<?php
$num_arr=range(1,5);
$char_arr=range('E','A');
print_r($num_arr);
print_r($char_arr); ?>
explode()函数根据分隔符分割字符串,结果生成一个新数组(implode()函数功能相反):
<?php
$date="2015-3-15";
$arr=explode("-",$date);
print_r($arr); ?>
extract()是将数组元素的变量转化为字符串变量;compact()相反。
使用list()和数组为一组变量赋值:
<?php
$names = array("Billy", "Peter", "Steve");
list($n1,$n2,$n3)=$names;
echo "$n1 $n2 $n3";
?>
PHP 数组浅析的更多相关文章
- Java知识点汇总
Java中泛型的本质 Java中静态变量的适用场景 Java类加载原理及类加载器 Java中对Clone的理解 Java中HashMap的实现 Java中Collection和Collections的 ...
- 浅析PHP中for与foreach两个循环结构遍历数组的区别
遍历一个数组是编程中最常见不过的了,这里跟大家讨论下for和foreach两种方法.用这两种方法执行遍历的场景太多太多了,这里我们只针对以下两个数组作为例子来讨论.所谓管中窥豹,多少能理清一点两者的区 ...
- <转>浅析长度为0的数组
前面在看Xen的源码时,遇到了一段代码,如下所示: 注意上面最后一行的代码,这里定义了一个长度为的数组,这种用法可以吗?为什么可以使用长度为0 的数组?长度为的数组到底怎么使用?……这篇文章主要针对该 ...
- JavaScript 中数组实用浅析
本文适用于HTML.ASP 中的 JavaScript 脚本代码.代码以 HTML 中的 JS 为例,如果在 ASP 中,请将 document.write 改为 Response.Write 即可. ...
- 包装类、数组、string类浅析及练习
String s1 = "abc"; String s2 = "abc"; System.out.println(s1==s2); //返回true Strin ...
- 浅析JavaScript之数组
一 概述 JavaScript数组同后端语言一样,具有它自己的数据结构,归根结底,这种数据结构,本质就是一种集合. 在后端语言中(如java,.net等),数组是这样定义的:数组是用来存储相同数据类 ...
- 浅析Java 数组-基础详解
什么是数组:数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同. Java 数组:用来存储固定大小的同类型元素. 一 声明.创建,初始化Java 数组 写在前面 ...
- JavaScript (JS)基础:DOM 浅析 (含数组Array、字符串String基本方法解析)
①文本对象document: 例如:document.getElementById() 只获取一个对象 document.getElementsByTagName() 获取 ...
- AJPFX浅析Java数组
数组(array)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信息分组的便利方法.注意:如 ...
随机推荐
- webapi - 使用依赖注入
本篇将要和大家分享的是webapi中如何使用依赖注入,依赖注入这个东西在接口中常用,实际工作中也用的比较频繁,因此这里分享两种在api中依赖注入的方式Ninject和Unity:由于快过年这段时间打算 ...
- 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...
- 获取Canvas当前坐标系矩阵
前言 在我的另一篇博文 Canvas坐标系转换 中,我们知道了所有的平移缩放旋转操作都会影响到画布坐标系.那在我们对画布进行了一系列操作之后,怎么再知道当前矩阵数据状态呢. 具体代码 首先请看下面的一 ...
- html5标签canvas函数drawImage使用方法
html5中标签canvas,函数drawImage(): 使用drawImage()方法绘制图像.绘图环境提供了该方法的三个不同版本.参数传递三种形式: drawImage(image,x,y):在 ...
- Java消息队列--ActiveMq 实战
1.下载安装ActiveMQ ActiveMQ官网下载地址:http://activemq.apache.org/download.html ActiveMQ 提供了Windows 和Linux.Un ...
- golang sync.WaitGroup bug
注意,这个结构体,要是想在函数之间传来传去的话,必须要使用指针....... 这个结构体里没有 指针,这个类型可以说没有“引用特性”. 被坑了一晚上.特此记录.
- App 审核由于 IPv6 网络问题被拒
昨天 提交App Store 的时候被拒了 We discovered one or more bugs in your app when reviewed on iPhone running iOS ...
- 张高兴的 UWP 开发笔记:汉堡菜单进阶
不同于Windows 8应用,Windows 10引入了"汉堡菜单"这一导航模式.说具体点,就拿官方的天气应用来说,左上角三条横杠的图标外加一个SplitView控件组成的这一导航 ...
- SQL中字符串拼接
1. 概述 在SQL语句中经常需要进行字符串拼接,以sqlserver,oracle,mysql三种数据库为例,因为这三种数据库具有代表性. sqlserver: select '123'+'456' ...
- Hadoop伪分布式集群环境搭建
本教程讲述在单机环境下搭建Hadoop伪分布式集群环境,帮助初学者方便学习Hadoop相关知识. 首先安装Hadoop之前需要准备安装环境. 安装Centos6.5(64位).(操作系统再次不做过多描 ...