PHP基础之数组2

前面一篇我们简单介绍了以下数组的基本知识,这节我们主要了解在php中经常使用的数组函数。

1. 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
)

    

4. 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,那么返回的是取出的随机单元的键名。而另外一种情况则是返回一个数组。


今天就到这里了,明天在接着说一下数组排序,遍历,增删。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值