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)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信息分组的便利方法.注意:如 ...
随机推荐
- Linux CentOS 配置Tomcat环境
一.下载Tomcat 下载Tomcat方式也有两种,可以参考我的前一篇博文Linux CentOS配置JDK环境,这边就不再赘述. 二.在Linux处理Tomcat包 1.创建tomcat文件夹 mk ...
- 【初学python】使用python连接mysql数据查询结果并显示
因为测试工作经常需要与后台数据库进行数据比较和统计,所以采用python编写连接数据库脚本方便测试,提高工作效率,脚本如下(python连接mysql需要引入第三方库MySQLdb,百度下载安装) # ...
- Android混合开发之WebView与Javascript交互
前言: 最近公司的App为了加快开发效率选择了一部分功能采用H5开发,从目前市面的大部分App来讲,大致分成Native App.Web App.Hybrid App三种方式,个人觉得目前以Hybri ...
- JS图片上传预览插件制作(兼容到IE6)
其实,图片预览功能非常地常见.很意外,之前遇到上传图片的时候都不需要预览,也一直没有去实现过.现在手上的项目又需要有图片预览功能,所以就动手做了一个小插件.在此分享一下思路. 一.实现图片预览的一些方 ...
- ls: 无法访问/usr/sbin/smartctl: 没有那个文件或目录
环境:RHEL6.5 + Oracle 11.2.0.4 RAC 在安装RAC时,检查时缺少包 cvuqdisk-1.0.9-1,oracle提供脚本修复安装. 但在执行时报错: [root@orad ...
- Oracle学习之路-- 案例分析实现行列转换的几种方式
注:本文使用的数据库表为oracle自带scott用户下的emp,dept等表结构. 通过一个例子来说明行列转换: 需求:查询每个部门中各个职位的总工资 按我们最原始的思路可能会这么写: ...
- “fixed+relative==absolute”——对BFC的再次思考
好久没写博客了,刚好今天跨年夜没约到什么妹子,在家宅着不如写点东西好了. 需求 昨天晚上,给公司年会做一个移动端的投票页面,遇到一个UI优化的问题: · 正文内容少于一屏时,投票提交按钮固定显示在页面 ...
- 【走过巨坑】android studio对于jni调用及运行闪退无法加载库的问题解决方案
相信很多小伙伴都在android开发中遇到调用jni的各种巨坑,因为我们不得不在很多地方用到第三方库so文件,然而第三方官方通常都只会给出ADT环境下的集成方式,而谷歌亲儿子android studi ...
- EC笔记:第4部分:20、传递引用代替传值
考虑以下场景: #include <iostream> #include <string> using namespace std; struct Person { strin ...
- 【夯实Nginx基础】Nginx工作原理和优化、漏洞
本文地址 原文地址 本文提纲: 1. Nginx的模块与工作原理 2. Nginx的进程模型 3 . NginxFastCGI运行原理 3.1 什么是 FastCGI ...