基本数组函数
在PHP中,常见的基本操作数组的函数有count()、range()、array_merge()、array_chunk()函数等,接下来将对这些基本数组函数进行讲解。
1. count()函数
count()函数用于计算数组中元素的个数,如下列代码所示:
$stu = [
['Tom', 'male', 18],
['Alice', 'female', 15],
['Julia', 'female', 14]
];
echo count($stu); // 输出结果:3
echo count($stu, 1); // 输出结果:12
从上述代码可以看出,count()函数的第2个参数默认为0,只计算一维数组的个数,当设为1时,表示递归地对数组计数。
2. range()函数
range()函数用于建立一个包含制定范围单元的数组,如下列代码所示:
1 $arr = range('a', 'c');
2 print_r($arr); // 输出结果:Array ( [0] => a [1] => b [2] => c )
3. array_merge()函数
array_merge()函数用于合并一个或多个数组,如下列代码所示:
$array1 = ['food' => 'tea', 2, 4];
$array2 = ['a', 'food' => 'Cod', 'type' => 'jpg', 4];
$result = array_merge($array1, $array2);
// 输出结果:Array([food]=>Cod [0]=>2 [1]=>4 [2]=>a [type]=>jpg [3]=>4 )
print_r($result);
从上述代码可以看出,数组array2与array1中的字符串下标重复,则后面的下标值覆盖前面的下标值,输出Cod,没有重复的下标元素则正常输出。其他以数字为下标的数组,键名会以连续方式重新索引。例如,array1中的4合并后下标为1,array2中的4合并后的下标为3。
4. array_chunk()函数
array_chunk()函数可以将一个数组分割成多个,如下列代码所示:
$arr = ['one' => 1, 'two' => 2, 'three' => 3];
// 输出结果:Array([0]=>Array([0]=>1 [1]=>2) [1]=>Array([0]=>3))
print_r(array_chunk($arr, 2));
// 输出结果:Array ([0]=>Array([one]=>1 [two]=>2) [1]=>Array([three]=>3))
print_r(array_chunk($arr, 2, true));
从上述代码可以看出,array_chunk()函数的第1个参数表示待分割数组,第2个参数用于指定分割后数组中元素的个数,最后一个数组的元素个数可能会小于指定个数,第3个参数在默认或设为false的情况下,表示分割后数组的下标从0开始,当设为true时,表示保留待分割数组中原来的键名。