付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PHP数组名甘繁
2011-2012
v2.0后盾网人人做后盾基础知识后盾网人人做后盾数组是在程序设计中,为了处理方便,把若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组等各种类别。所谓的数组下标可以视为资料内容在此数组中的识别名称,通常被称为数组下标。当索引值为数值时,也代表此资料内容在数组中的 位置。数组中有几个索引值就被称为几维数组。数组分类:在PHP中有两种数组:索引数组和关联数组。索引(indexed)数组的索引值是整数,以0开始。当通过位置来标识东西时用索引数组。关联(associative)数组以字符串做为索引值,关联数组更像操作表。索引值为列名,用于 列的数据。基础知识后盾网人人做后盾数组常用的赋值方式由于
PHP是属于弱类型数据,因此源代码中的数组并不需要经过特别的 操作,直接将一组数值指定给某一数组元素即可。一般情况下数组的赋值有两种方式:直接赋值方式如:$a[0]=‘$a[1]=‘’;’;使用array函数如:$a=array(““,””);后盾网人人做后盾一维数组一维数组数组中索引值(下标)只有一个的数组称为一维数组。在数组中这是最简单的,也是最常用的了。直接赋值格式:$数组变量名[索引值]=资料内容其中索引值(下标)可以是一个字符串或一个整数。等价于整数(不以0开头)的字符串值被当作整数对待。因此,数组$array[3]与$array[‘3’]是相同的元素。但是$array[‘03’]
的另外不同的元素。后盾网人人做后盾后盾网人人做后盾<?php$a=array(1,2,3,4,5,6);$b=array("one",
"two",
"three");$c=array(0=>"aaa",1=>"bbb",2=>"ccc");$d=array("aaa",6=>"bbb","ccc");$e=array("name"=>"zhang",
"age"=>20);?>二维数组:$arr
=
array(0=>array(1,2),1=>array("a","b"));$arr[2]=array("bbs","web");二维数组后盾网人人做后盾结构控制后盾网人人做后盾foreach
仅能用于数组,当试图将其用于其它数据类型或者一个未初始化的变量时会产生错误。有两种语法,第二种比较次要但却是第一种的有用的扩展。foreach
(array_expression
as
$value)statementforeach
(array_expression
as
$key
=>
$value)statementeach返回数组中当前的键/值对并将数组指针向前移动一步array
each
(
array
&$array
)
返回array
数组中当前指针位置的键/值对并向前移动数组指针。键值对被返回为四个单元的数组,键名为0,1,key
和value。单
元0
和key
包含有数组单元的键名,1
和value
包含有数据。如果•指针越过了数组的末端,则each()返回FALSE。数组操作函数后盾网人人做后盾数组操作函数后盾网人人做后盾list把数组中的值赋给一些变量void
list
(
mixed
$varname
,
mixed
$...
)像array()一样,这不是真正的函数,而是语言结构。list()用一步操作给一组变量进行赋值。注:list()仅能用于数字索引的数组并假定数字索引从0
开始。key关联数组中取得键名mixed
key
(
array
&$array)key()返回数组中当前单元的键名current返回数组中的当前单元mixed
current
(
array
&$array
)每个数组中都有一个 的指针指向它“当前的”单元,初始指向到数组中的第一个单元•数组操作函数后盾网人人做后盾next将数组中的 指针向前移动一位mixed
next
(
array
&$array
)prev将数组的
指针倒回一位(
array
&$array
)mixed
prevend将数组的 指针指向最后一个单元mixed
end
(
array
&$array
)reset将数组的
指针指向第一个单元mixed
reset
(
array
&$array
)数组操作函数后盾网人人做后盾数组操作函数后盾网人人做后盾count计算数组中的单元数目或对象中的属性个数int
count
(
mixed
$var
[,
int
$mode
]
)返回var
中的单元数目,通常是一个array,任何其它类型都只有一个单元。•对于对象,如果安装了SPL,可以通过实现Countable
接口来调用
count()。该接口只有一个方法count(),此方法返回count()函数的返回值。•如果var
不是数组类型或者实现了Countable
接口的对象,将返回1,有一个例外,如果var
是NULL
则结果是0。数组操作函数后盾网人人做后盾in_array检查数组中是否存在某个值如果第三个参数strict
的值为TRUE
则in_array()函数还会检查needle
的类型是否和haystack
中的相同in_array
(
mixed
$needle
,
array
$haystack
[,
bool
$strict
]
)数组操作函数后盾网人人做后盾array_search在数组中搜索给定的值,如果成功则返回相应的键名•array_search
(
mixed
$needle
,
array
$haystack
[,
bool
$strict
]
)数组操作函数后盾网人人做后盾array_key_exists检查给定的键名或索引是否存在于数组中array_key_exists
(
mixed
$key
,
array
$search
)数组操作函数后盾网人人做后盾array_filter用回调函数过滤数组中的单元•array
array_filter
(
array
$input
[,
callback
$callback
]
)array_filter()依次将input
数组中的每个值传递到callback
函数。如果callback
函数返回TRUE,则input
数组的当前值会被包含在返回的结果数组中。数组的键名保留不变数组操作函数后盾网人人做后盾array_walk对数组中的每个成员应用用户函数•bool
array_walk
(
array
&$array
,
callback
$$userdata
]
)ame
[,
mixed成功时返回TRUE,或者在失败时返回FALSE.
将用户自定义函数
ame
应用到
array
数组中的每个单元。典型情况下
ame
接受两个参数。array
参数的值作为第一个,键名作为第二个。如果提供了可选参数userdata,将被作为第三个参数传递给
callback ame。数组操作函数后盾网人人做后盾array_map将回调函数作用到给定数组的单元上array
array_map
(
callback
$callback
,
array
$arr1
[,
array
$...
]
)
array_map()返回一个数组,该数组包含了arr1
中的所有单元经过callback
作用过之后的单元。callback
接受的参数数目应该和传递给array_map()函数的数组数目一致。数组操作函数后盾网人人做后盾extract从数组中将变量导入到当前的符号表•int
extract
(
array
$var_array
[,
int
$extract_type
[,
string
$prefix
]]
)•本函数用来将变量从数组中导入到当前的符号表中。接受结合数组var_array
作为参数并将键名当作变量名,值作为变量的值。对每个键/值对都会在当前的符号表中建立变量,并受到
extract_type
和prefix
参数的影响。数组操作函数后盾网人人做后盾compact建立一个数组,包括变量名和它们的值array
compact
(
mixed
$varname
[,
mixed
$...
]
)•compact()
接受可变的参数数目。每个参数可以是一个包括变量名的字符串或者是一个包含变量名的数组,该数组中还可以包含其它单元内容为变量名的数组。array_chunk将一个数组分割成多个array
array_chunk
(
array
$input
,
int
$size
[,
bool$preserve_keys
]
)•array_chunk()将一个数组分割成多个数组,其中每个数组的单元数目由size
决定。最后一个数组的单元数目可能会少几个。得到的数组是一个数组中的单元,其索引从零开始。将可选参数preserve_keys
设为TRUE,可以使PHP
保留输入数组中原来的键名。如果你指定了FALSE,那每个结果数组将用从零开始的新数字索引。默认值是FALSE。数组操作函数后盾网人人做后盾数组操作函数后盾网人人做后盾array_push将一个或多个单元压入数组的末尾(入栈)int
array_push
(
array
&$array
,
mixed
$var
[,
mixed
$...
]
)array_push()将array
当成一个栈,并将传入的变量压入array
的末尾。array
的长度将根据入栈变量的数目增加。数组操作函数后盾网人人做后盾array_pop将数组最后一个单元弹出(出栈)mixed
array_pop
(
array
&$array
)array_pop()弹出并返回array
数组的最后一个单元,并将数组array
的长度减一。如果array
为空(或者不是数组)将返回NULL。数组操作函数后盾网人人做后盾array_shift将数组开头的单元移出数组mixed
array_shift
(
array
&$array
)
array_shift()
将
array
的第一个单元移出并作为结果返回,将array
的长度减一并将所有其它单元向前移动一位。所有的数字键名将改为从零开始计数,文字键名将不变。如果
array
为空(或者不是数组),则返回
NULL。array_unshift•在数组开头 一个或多个单元int
array_unshift
(
array
&$array
,
mixed
$var
[,
mixed
$...
]
)array_unshift()
将传入的单元 到
array
数组的开头。注意单元是作为整体 入的,因此传入单元将保持同样的顺序。所有的数值键名将修改为从零开始重新计数,所有的文字键名保持不变。•返回array
数组新的单元数目。数组操作函数后盾网人人做后盾数组操作函数后盾网人人做后盾array_keys返回数组中所有的键名array
array_keys
(
array
$input
[,
mixed
$search_value
[,
bool$strict
]]
)array_keys()返回input
数组中的数字或者字符串的键名。
如果指定了可选参数search_value,则只返回该值的键名。否则
input
数组中的所有键名都会被返回。自PHP
5
起,可以用strict参数来进行全等比较(===)。数组操作函数后盾网人人做后盾array_values返回数组中所有的值array
array_values
(
array
$input
)array_values()返回input
数组中所有的值并给其建立数字索引。数组操作函数后盾网人人做后盾array_sum计算数组中所有值的和number
array_sum
(
array
$array
)array_sum()
将数组中的所有值的和以整数或浮点数的结果返回。array_merge合并一个或多个数组array
array_merge
(
array
$array1
[,
array
$array2
[,
array
$...
]]
)array_merge()
将一个或多个数组的单元合并起来,一个数组中的值附加
一个数组的后面。返回作为结果的数组。••如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。数组操作函数后盾网人人做后盾数组操作函数后盾网人人做后盾range建立一个包含指定范围单元的数组array
range
(
mixed
$low
,
mixed
$high
[,
number
$step
]
)range()返回数组中从low
到high
的单元,包括它们本身。如果low>high,则序列将从high
到low。数组操作函数后盾网人人做后盾array_unique移除数组中重复的值array
array_unique
(
array
$array
)array_unique()接受array
作为输入并返回没有重复值的新数组。•注意键名保留不变。array_unique()
先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的array
中同一个值的第一个出现的键名会被保留。数组操作函数后盾网人人做后盾array_rand从数组中随机取出一个或多个单元•mixed
array_rand
(
array
$input
[,
int
$num_req
]
)array_rand()在你想从数组中取出一个或多个随机的单元时相当有用。它接受input
作为输入数组和一个可选的参数num_req,指明
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年上海市针灸经络研究所公开招聘工作人员笔试备考题库及答案解析
- 2026江苏无锡市港下中学招聘英语临代教师1人笔试备考题库及答案解析
- 2026宁夏回族自治区中西医结合医院自主招聘所属社区卫生服务机构合同制人员38人笔试备考试题及答案解析
- 2026福建龙岩市上杭县生态环境保护委员会办公室招聘编外人员2人笔试备考试题及答案解析
- 2026安徽安庆迎江经济开发区管委会面向社会招聘人才3人笔试备考题库及答案解析
- 2026河南中医药大学第一附属医院博士研究生招聘109人(第1号)笔试备考试题及答案解析
- 2026济钢集团有限公司校园招聘(13人)笔试备考题库及答案解析
- 2026新疆第七师国有资本投资运营集团有限公司选聘子企业经营管理人员15人笔试备考题库及答案解析
- 2026广西柳州市事业单位公开招聘中高级(急需紧缺)人才15人(第一批)笔试备考题库及答案解析
- 2026国家自然资源部海岛研究中心招聘15人笔试备考试题及答案解析
- 2025年山西国企笔试题库及答案
- 招标文件编制细则与常见问题解析
- 水下机器人与海洋自动化:创新技术的前沿探索
- DLT 5142-2012 火力发电厂除灰设计技术规程
- DB3208∕T 162-2021 青虾池套养中华绒螯蟹养殖技术操作规程
- 2025餐饮创意菜品研发趋势研究及厨师IP化与出品标准化平衡报告
- 医院科室整改前后对比
- 海外机械设备管理制度
- 上海印象旅游城市介绍模板(免费下载)
- 文献检索与科技论文写作
- 社区工作者经典备考题库(必背300题)
评论
0/150
提交评论