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)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信息分组的便利方法.注意:如 ...
随机推荐
- 浅谈 Fragment 生命周期
版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Fragment 文中如有纰漏,欢迎大家留言指出. Fragment 是在 Android 3.0 中 ...
- 聊聊Unity项目管理的那些事:Git-flow和Unity
0x00 前言 目前所在的团队实行敏捷开发已经有了一段时间了.敏捷开发中重要的一个话题便是如何对项目进行恰当的版本管理.项目从最初使用svn到之后的Git One Track策略再到现在的GitFlo ...
- C# MVC 5 - 生命周期(应用程序生命周期&请求生命周期)
本文是根据网上的文章总结的. 1.介绍 本文讨论ASP.Net MVC框架MVC的请求生命周期. MVC有两个生命周期,一为应用程序生命周期,二为请求生命周期. 2.应用程序生命周期 应用程序生命周期 ...
- 如何正确使用日志Log
title: 如何正确使用日志Log date: 2015-01-08 12:54:46 categories: [Python] tags: [Python,log] --- 文章首发地址:http ...
- 将 instance 部署到 OVS Local Network - 每天5分钟玩转 OpenStack(130)
上一节创建了 OVS 本地网络 first_local_net,今天我们会部署一个 instance 到该网络并分析网络结构.launch 一个 instance,选择 first_local_net ...
- 张高兴的 UWP 开发笔记:横向 ListView
ListView 默认的排列方向是纵向 ( Orientation="Vertical" ) ,但如果我们需要横向显示的 ListView 怎么办? Blend for Visua ...
- NGINX引入线程池 性能提升9倍
1. 引言 正如我们所知,NGINX采用了异步.事件驱动的方法来处理连接.这种处理方式无需(像使用传统架构的服务器一样)为每个请求创建额外的专用进程或者线程,而是在一个工作进程中处理多个连接和请求.为 ...
- 使用JavaScript为一张图片设置备选路径
在做网页开发的时候,有时候希望给图片设置一个备选路径,即,当src属性对应的主路径加载失败的时候,图片可以马上切换到备选路径.这样,即使主路径失效了,显示备用路径也不会影响网页的正常体验. 注意到网页 ...
- SQLServer如何添加try catch
在.net中我们经常用到try catch.不过在sqlserver中我们也可以使用try catch捕捉错误,在这里把语法记录下来和大家分享一下, --构建存储过程CREATE PROCEDURE ...
- CentOS 7 安装出现 /dev/root does not exits 导致无法安装的问题
本人在官网下的是这个 CentOS-7-x86_64-DVD-1611.iso ,然后用UltraISO 9.6制作的U盘启动盘,不过在安装的时候出现了这个错误, 然后也是搜了好久,试了一下,下面这个 ...