PHP学习笔记-数组

来源:互联网 发布:手机游戏编程培训 编辑:程序博客网 时间:2024/05/21 17:32

转载请标明出处:
http://blog.csdn.net/hai_qing_xu_kong/article/details/51635540
本文出自:【顾林海的博客】

前言

数组就是一系列数据的集合,把一系列数据组织起来,形成一个可操作的整体。数组array是一组有序的变量,其中每个变量被称为一个元素。每个元素由一个特殊的标识符来区分,这个标识符称为键(也称为下标)。数组中的每个实体都包含两项:键和值。可以通过键值来获取相应数组元素,这些键可以是数值键或关联键。

声明数组

如何声明数组?主要有两种方式:

  1. 应用array()函数声明数组。
  2. 直接通过为数组元素赋值的方式声明数组。

array()函数声明数组的方式如下:

array array ( [mixed ...])

参数说明:
参数mixed的语法为key => value,多个参数mixed间用逗号分开,分别定义了索引和值。索引可以是字符串或数字。如果省略了索引,则会自动产生从0开始的整数索引。如果索引是整数,则下一个产生的索引将是目前最大的整数索引+1。如果定义了两个完全一样的索引,则后面一个会覆盖前一个。数组中的各数据元素的数据类型可以不同,也可以是数组类型。当mixed是数组类型时,就是二维数组

array()函数声明例子1:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("hello","PHP","bill");print_r($array);echo "<br>".$array[1];?></body></html>

运行结果:

Array ( [0] => hello [1] => PHP [2] => bill )
PHP

array()函数声明例子2:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("a"=>"hello","b"=>"PHP","c"=>"bill");print_r($array);echo "<br>".$array["c"];?></body></html>

运行结果:

Array ( [a] => hello [b] => PHP [c] => bill )
bill




直接为数组元素赋值:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array[1]="hello";$array["a"]="php";$array["b"]="bill";print_r($array);echo "<br>".$array[1];echo "<br>".$array["a"];echo "<br>".$array["b"];?></body></html>

运行结果:

Array ( [1] => hello [a] => php [b] => bill )
hello
php
bill

遍历数组

1.使用foreach结构遍历数组

 遍历数组元素最常用的方法是使用foreach结构。foreach结构并非操作数组本身,而是操作数组的一个备份。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("a"=>"hello","b"=>"PHP","c"=>"bill");foreach($array as $item){ echo $item.'<br>';}?></body></html>

运行结果:

hello
PHP
bill

2.使用list()函数遍历数组

 把数组中的值赋给一些变量。与array()函数类似,这不是真正的函数,而是语言结构。list()函数仅能用于数字索引的数组,且数字索引从0开始。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("hello","PHP","bill");list($a,$b,$c)=$array;echo $a;?></body></html>

运行结果:

hello


字符串与数组的转换

1、使用explode()函数将字符串转换成数组

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$str="a,b,c,d,e";$array=explode(",",$str);foreach($array as $item){ echo $item;}?></body></html>

运行结果:

abcde


2、使用implode()函数将数组转换成一个新字符串

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("hello","php","bill");$new_array=implode("-",$array);echo $new_array;?></body></html>

运行结果:

hello-php-bill


统计数组元素个数

使用count()函数对数组中的元素个数进行统计。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("hello","php","bill");echo count($array);?></body></html>

运行结果:

3

查询数组中指定元素

array_search()函数,在数组中搜索给定的值,找到后返回键名,否则返回false。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("a"=>"hello","b"=>"php","c"=>"bill");echo array_search("php",$array);?></body></html>

运行结果:

b

获取数组中最后一个元素

通过函数array_pop()获取数组中的最后一个单元。array_pop()函数获取并返回数组的最后一个单元,并将数组的长度减1,如果数组为空(或者不是数组)将返回null。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("a"=>"hello","b"=>"php","c"=>"bill");$item=array_pop($array);echo $item.'<br>';print_r($array);?></body></html>

运行结果:

bill
Array ( [a] => hello [b] => php )

向数组中添加元素

通过array_push()函数向数组中添加元素。array_push()函数将数组当成一个栈,将传入的变量压入该数组的末尾,该数组的长度将增加入栈变量的数目,返回数组新的单元总数。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("hello","php","bill");array_push($array,"java","c#");print_r($array);?></body></html>

运行结果:

Array ( [0] => hello [1] => php [2] => bill [3] => java [4] => c# )

删除数组中重复元素

通过array_unique()函数删除数组中重复的元素。array_unique()函数,将值作为字符串排序,然后对每个值只保留第一个键名,忽略所有后面的键名,即删除数组中重复的元素。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>PHP语言基础</title></head><body><?phpheader("Content-Type:text/html;   charset=gb2312");$array=array("hello","php","bill","java","php");$result=array_unique($array);print_r($result);?></body></html>

运行结果:

Array ( [0] => hello [1] => php [2] => bill [3] => java )

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 晚上睡觉时双腿酸胀怎么办 腿擦破皮了怎么办 快速好 宝宝腿擦破皮了怎么办 新生儿睡觉腿喜欢弯曲怎么办 孩子八个月交叉走路怎么办 胫椎引起双腿发热怎么办 婴儿头型睡扁了怎么办 膝盖抻筋了疼怎么办 小腿肚子抻筋了怎么办 后背抻筋了 很疼怎么办 运动膝盖抻着了怎么办 大腿内侧抻着了怎么办 大腿抻筋了 很疼怎么办 小腿肚子聚筋了怎么办 6个月婴儿腿弯怎么办 胳膊抻筋拉伤了怎么办 宝宝抻着了怎么办妙招 拎东西胳膊抻了怎么办 小臂一用力筋疼怎么办 摔破胳膊很痛怎么办 胳膊的筋扭伤了怎么办 小孩胳膊抻筋了怎么办 肩膀抻着了怎么办妙招 右边肩膀抻着了怎么办 胳膊因劳累很痛怎么办 宝宝胳膊摔了疼怎么办 宝宝胳膊抻筋了怎么办 孕妇胳膊筋伤了怎么办 刚进公司就怀孕怎么办 撞到胳膊麻筋了怎么办 腰抻了怎么办多久能好 腰突然抻了一下怎么办 干活抻筋了 很疼怎么办 胳膊抻筋一动就疼怎么办 肩膀受风了很疼怎么办 开空调受风了怎么办 胳膊受风了疼怎么办 孩子胳膊抻筋了怎么办 胳膊被风吹了疼怎么办 月子里胳膊受风怎么办 受风了胳膊酸痛怎么办