Loading...
墨滴

leruge

2021/08/11  阅读:43  主题:默认主题

【每日函数】每日函数(日期结构)

一梦千年系列

今日函数array_randarray_reducearray_reduce_recursivearray_replacearray_reverse

array_rarnd1

随机获取数组中的一个或者多个键名

  1. 说明
array_rand(array $array, int $num) : mixed
  1. 参数

array需要操作的数组

num随机获取键名的数量

  1. 返回值

如果num是1,则返回一个键名,如果大于1则返回一个键名组装的数组

  1. 范例
$array = [
    'name' => 'swk',
    'age' => 22,
    'sex' =>1
];

$res = array_rand($array, 2);

print_r($res);

以上范例会输出

Array
(
    [0] => name
    [1] => sex
)
  1. 特别注意

num参数必须大于等于1,如果num的值大于数组长度,则报错

array_reduce2

使用回调函数循环地将数组转化为单一的值

  1. 说明
array_reduce(array $array, callback $func, $initial = nul) : mixed
  1. 参数

array需要操作的数组

func回调函数,参数有俩个,第一个是上次迭代的值,第二个是当前数组迭代的键值

initial初始值

  1. 返回值

如果数组为空,且没有指定initial,则返回null

  1. 范例
$array = [12345];

function func($a, $b)
{
    return $a + $b;
}

$res = array_reduce($array, 'func'0);

print_r($res);

以上范例输出

15
  1. 特别说明

如果数组为空,且没有指定initial,则返回null

array_replace_recursive3

使用传递的数组递归替换第一个数组的元素

  1. 说明
array_replace_recursive(array $array, array ...) : array

后面的数组递归替换第一个数组,如果是同名建则后面的值覆盖前面的

  1. 参数

array需要操作的数组

...替换的数组

  1. 返回值

返回一个替换后的数组

  1. 范例
$array1 = [
    'swk' => [
        'name' => 'swk',
        'age' => 22
    ],
    'zbj' => [
        'name' => 'zbj'
    ]
];

$array2 = [
    'swk' => [
        'sex' => 1,
    ],
    'zbj' => [
        'name' => 'zbj2'
    ]
];

$newArray = array_replace_recursive($array1, $array2);

print_r($newArray);

以上范例输出

Array
(
    [swk] => Array
        (
            [name] => swk
            [age] => 22
            [sex] => 1
        )

    [zbj] => Array
        (
            [name] => zbj2
        )

)
  1. 特别说明

后面的数组递归替换第一个数组,如果是同名建则后面的值覆盖前面的

array_replace4

使用传递的数组替换第一个数组的元素,不递归,值替换一维的

  1. 说明
array_replace(array $array, array ...) : array

后面的数组替换第一个数组,如果是同名建则后面的值覆盖前面的

  1. 参数

array需要操作的数组

...替换的数组

  1. 返回值

返回一个替换后的数组

  1. 范例
$array1 = [
    'swk' => [
        'name' => 'swk',
        'age' => 22
    ],
    'zbj' => [
        'name' => 'zbj'
    ]
];

$array2 = [
    'swk' => [
        'sex' => 1,
    ],
    'zbj' => [
        'name' => 'zbj2'
    ]
];

$newArray = array_replace($array1, $array2);

print_r($newArray);

以上范例输出

Array
(
    [swk] => Array
        (
            [sex] => 1
        )

    [zbj] => Array
        (
            [name] => zbj2
        )

)
  1. 特别说明

后面的数组替换第一个数组,如果是同名建则后面的值覆盖前面的,不递归

array_reverse5

颠倒数组顺序

  1. 说明
array_reverse(array $array, bool $preserve_keys = false) : array
  1. 参数

array需需要操作的数组

preserve_keys如果操作的是索引数组,是否需要保留键名

  1. 返回值

返回一个颠倒顺序的数据

  1. 范例
$array = [
    'swk' => [
        'name' => 'swk',
        'age' => 22
    ],
    'zbj' => [
        'name' => 'zbj'
    ]
];

$newArray = array_reverse($array);

print_r($newArray);

以上范例输出

Array
(
    [zbj] => Array
        (
            [name] => zbj
        )

    [swk] => Array
        (
            [name] => swk
            [age] => 22
        )

)

leruge

2021/08/11  阅读:43  主题:默认主题

作者介绍

leruge