数组是一种基本的数据类型。
PHP中提供了丰富的数组处理函数和方法。
数组函数还可以实现堆栈和队列等数据结构。
在PHP中有两种数组:索引数组和关联数组。
¨索引(indexed)数组的索引值是整数,以0开始。
¨关联(associative)数组以字符串做为索引值,关联数组更像操作表。索引值为列名,用于访问列的数据。
数组赋值
¨ 直接赋值
$a[0]=‘aa’;
$a[1]=‘bb’;
¨ 使用array函数
$a=array(“aa “,”bb”)
注意:
等价于整数(不以0开头)的字符串值被当作整数对待省略索引表示下一个元素
二维数组
¨$a[0][] = “aa”;
¨$a[0][] = “bb”;
¨$a = array(0=>array(“aa”,”bb”));
数组的遍历
¨foreach (array_expression as $value)
¨foreach (array_expression as $key => $value)
¨联合使用list( ), each( )和while循环
array each ( array array)
void list ( mixed ...)
mixed reset ( array array)
<?php
while(list($k,$v) = each($array)) {
if(is_array($v)) {
$x += add_weight1($v);
} else {
$x += $v;
}
}
?>
相关函数
¨数组指针操作
mixed next(数组名称);
mixed prev(数组名称);
mixed end(数组名称);
mixed reset(数组名称);
¨当前值
mixed key(数组名称);
mixed current(数组名称);
元素个数
int count(数组名称)
¨其他操作
array_change_key_case( )
array_count_values( )
array_fill(起始索引位置, 区段大小, 指定字元)
array_filter(目标数组, 使用者自定义函数)
array_flip( )
array_values()
array_keys()
bool in_array(mixed str, array arr[, bool b])
mixed array_search ( mixed str, array arr [, bool b]
extract()
compact()
array_sum()
array_diff()
array_push()
•
array_pop()
•
array_unshift()
•
array_shift()
忽略键名的数组排序
- • sort()
- • rsort()
- • usort()
-
�保留键名的数组排序
- • asort()
- • arsort()
- • uasort()
-
�通过键名对数组排序:
- • ksort();
- • krsort();
- • uksort();
- range()
- array_unique()
- array_reverse()
- array_rand()
忽略键名的数组排序
- • sort()
- • rsort()
- • usort()
-
�保留键名的数组排序
- • asort()
- • arsort()
- • uasort()
-
�通过键名对数组排序:
- • ksort();
- • krsort();
- • uksort();
- range()
- array_unique()
- array_reverse()
- array_rand()
range()
•
array_unique()
•
array_reverse()
•
array_rand()
- • sort()
- • rsort()
- • usort()
-
�保留键名的数组排序
- • asort()
- • arsort()
- • uasort()
-
�通过键名对数组排序:
- • ksort();
- • krsort();
- • uksort();
- range()
- array_unique()
- array_reverse()
- array_rand()