本文实例分析了PHP数组操作。分享给大家供大家参考,具体如下:
PHP的数组是很重要的一部分。操作示例如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
<?php
function br() {
echo '<br />===============================================<br />' ;
}
$arr1 = array ();
$arr1 [] = 'x' ;
$arr1 [] = 'a' ;
$arr1 [] = 'e' ;
$arr1 [] = 'c' ;
$arr1 [] = 'h' ;
// 添加数组
array_push ( $arr1 , 3, 23, 55);
// 数组长度
echo 'the size of array is :' . count ( $arr1 ). '<br />' ;
// 反转
var_dump( array_reverse ( $arr1 ));
// 排序 - 直接作用于数组
sort( $arr1 );
var_dump( $arr1 );
// 排序 - 按字符串排序
sort( $arr1 , SORT_STRING);
var_dump( $arr1 );
// 范围
$arr2 = range( 'a' , 'h' );
// 连接
$arrTemp1 = implode( '-' , $arr2 );
echo $arrTemp1 ;
echo '<br />' ;
// 切割
echo '[' .implode( '][' , array_reverse ( explode ( '-' , $arrTemp1 ) )). ']' ;
// 数组合并,会重排索引
$arr3 = array_merge ( $arr1 , $arr2 );
var_dump( $arr3 );
// 删除数组元素
array_shift ( $arr3 );
array_pop ( $arr3 );
unset( $arr3 [4]);
array_splice ( $arr3 , 6, 2);
var_dump( $arr3 );
// 抽取数组,原数组不变
$arr4 = array_slice ( $arr3 , 2,3);
var_dump( $arr4 );
// 关联数组
$fruits = array ( 'red' => 'apple' , 'yellow' => 'banana' , 'green' => 'lime' );
// 数组键
$colors = array_keys ( $fruits );
// 数组值
$fla = array_values ( $fruits );
var_dump( $colors );
var_dump( $fla );
// 查找
echo in_array( 'green' , $colors );
echo '<br />' ;
echo in_array( 'black' , $colors )? 'in' : 'not in' ;
echo '<br />' ;
echo array_key_exists ( 'yellow' , $fruits );
echo '<br />' ;
// 按键排序
ksort( $fruits );
var_dump( $fruits );
// 按值排序
asort( $fruits );
var_dump( $fruits );
// 循环
foreach ( $fruits as $key => $value ) {
echo $key . ' => ' . $value . '<br />' ;
}
echo '<br />' ;
$f = $fruits ;
while ( $elem = each( $f )) {
echo $elem [ 'key' ]. ' -- ' . $elem [ 'value' ]. '<br />' ;
}
echo '<br />' ;
$arr5 = array (2, 8, 100, 33, -18);
// 查找最大最小值
echo max( $arr5 );
echo '<br />' ;
echo min( $arr5 );
echo '<br />' ;
echo array_sum ( $arr5 );
echo '<br />' ;
function double( $x ) {
echo ( $x * 2). ' ' ;
}
// 数组元素应用函数
array_walk ( $arr5 , 'double' );
function check( $x ) {
return $x > 20;
}
// 筛选
var_dump( array_filter ( $arr5 , 'check' ));
$arr6 = range(1,10);
echo 'random number: ' . array_rand ( $arr6 );
//统计
//count(); sizeof(); array_count_values();
$arr7 = array (4,5,1,2,3,1,2,1);
$ac = array_count_values ( $arr7 );
// 统计每个value出现的次数
var_dump( $ac );
$arr8 = array ( 'key1' => 'v1' , 'key2' => 'v2' , 'key3' => 'v3' );
extract( $arr8 );
echo "$key1 $key2 $key3" ;
//填补
$input = array (12,10,9);
var_dump( array_pad ( $input , 5, 0));
var_dump( array_pad ( $input , -5, 0));
?>
|
希望本文所述对大家PHP程序设计有所帮助。