PHP基础之数组2
前面一篇我们简单介绍了以下数组的基本知识,这节我们主要了解在php中经常使用的数组函数。
- array array_pad(array $input,int $pad_size,mixed $pad_value)
这个函数用来填补数组,该函数用pad_value来填补数组元素至pad_zize的长度。如果pad_size>0,那么被填充的数组元素从input数组的末尾开始。如果为负值,那么就从input数组的开始位置填充。如果pad_size 小于数组原有长度,那么不进行填充。
$ArrayPad = [15, 20, 6];
echo"<pre>";
$result = array_pad($ArrayPad, 6, -1);
print_r($result);
$result = array_pad($ArrayPad, -6, -1);
print_r($result);
$result = array_pad($ArrayPad, 2, -1);
print_r($result);
echo "<br/>";
输出:
Array
(
[0] => 15
[1] => 20
[2] => 6
[3] => -1
[4] => -1
[5] => -1
)
Array
(
[0] => -1
[1] => -1
[2] => -1
[3] => 15
[4] => 20
[5] => 6
)
Array
(
[0] => 15
[1] => 20
[2] => 6
)
2.array array_fill(int $start_index,int $num,mixed $value)
和array_pad函数类似,都是用特定值来填充数组。用value值将数组填充num个数目。如果start_index为正数,那么数组的键由start_index,start_index+1…..start_index+num-1构成。
如果start_index为负数,那么数组的键值由start_index,0….num-1构成。
$array1 = array_fill(2, 5, "Hello");
$array2 = array_fill(-2, 5, "World");
//填充为二维数组
$array3 = array_fill(3, 2, $array2);
echo"<pre>";
print_r($array1);
print_r($array2);
print_r($array3);
echo "<br/>";
输出:
Array
(
[2] => Hello
[3] => Hello
[4] => Hello
[5] => Hello
[6] => Hello
)
Array
(
[-2] => World
[0] => World
[1] => World
[2] => World
[3] => World
)
Array
(
[3] => Array
(
[-2] => World
[0] => World
[1] => World
[2] => World
[3] => World
)
[4] => Array
(
[-2] => World
[0] => World
[1] => World
[2] => World
[3] => World
)
)
3.array_fill_keys(array $keys,mixed$value)
实用vaue作为值,将keys数组的值作为键值来填充数组。
//array_fill_keys
$keys = array("ha", 10, 4, true);
$fill_array0 = array_fill_keys($keys, "Hello World");
echo"<pre>";
print_r($fill_array0);
echo "<br/>";
输出:
Array
(
[ha] => Hello World
[10] => Hello World
[4] => Hello World
[1] => Hello World
)
- mixed array_rand(array $input [,$num_req = 1])
随机输出input数组中的num_req个单元。
//array_rand
echo"<pre>";
$keys = array("ha", 10, 4, true);
$arr_rand = array_rand($keys, 1);
print_r($arr_rand);
echo "<br/>";
$arr_rand2 = array_rand($keys, 2);
print_r($arr_rand2);
echo "<br/>";
$arr_rand3 = array_rand($keys, 5);
print_r($arr_rand3);
echo "<br/>";
输出:
2
Array
(
[0] => 1
[1] => 3
)
Warning: array_rand(): Second argument has to be between 1 and the number of elements in the array in E:\PHP\PHP_Array2\PHP_Array2.php on line 58
可见参数num_req的取值范围是1-count($input)即input数组长度
从上面的结果我们可以看出当取值为1时,返回的结果是稍有不同的。如果取值为num_req为1,那么返回的是取出的随机单元的键名。而另外一种情况则是返回一个数组。
今天就到这里了,明天在接着说一下数组排序,遍历,增删。
还没有评论,来说两句吧...