1. 程式人生 > 其它 >【每日函式】每日函式(2021.08.07)

【每日函式】每日函式(2021.08.07)

一夢千年系列

array_fill_keys1

使用指定的鍵和值填充陣列

  1. 說明
array_fill_keys(array $keyArray, mixed $value) : array
  1. 引數

keyArray使用該陣列的值作為鍵名,非法值將被轉換為字串

value填充陣列所需的鍵值

  1. 返回值

返回填充後的陣列

  1. 範例
$keyArray = ['name', 'age', 'sex'];

$value = 'test';

$newArray = array_fill_keys($keyArray, $value);

print_r($newArray);

以上範例會輸出

Array
(
    [name] => test
    [age] => test
    [sex] => test
)
  1. 特別注意

沒有需要特別注意的

一夢千年系列

array_fill2

使用給定的值填充陣列

  1. 說明
array_fill(int $start, int $count, mixed $value) : array

使用value填充count個元素到陣列中,索引從start開始

  1. 引數

start新陣列的第一個索引值

count新陣列元素的個數

value新陣列的鍵值

  1. 返回值

返回一個數組,索引從start開始,元素個數是count,陣列值是value

  1. 範例
$value = 'test';

$newArray = array_fill(2, 3, $value);

print_r($newArray);

以上範例輸出

Array
(
    [2] => test
    [3] => test
    [4] => test
)
  1. 特別說明

如果count小於0,則為丟擲錯誤

一夢千年系列

array_filter3

  1. 說明
array_filter(array $array, callback $func = null, int $mode = 0) : array

遍歷陣列,將每個元素傳遞給func,如果返回true,則保留,否則遺棄,如果沒有func引數,則是過濾掉空值

  1. 引數

array需要過濾的陣列

func回撥函式,如果沒有此引數,則過濾掉所有空元素

mode預設是值傳陣列的鍵值,ARRAY_FILTER_USE_KEY的話傳的是鍵名,ARRAY_FILTER_USE_BOTH鍵名和鍵值一塊傳遞

  1. 返回值

返回一個新陣列,根據func過濾掉以後的陣列

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

$newArray = array_filter($array, fn($value) => $value == 'swk');

print_r($newArray);

以上範例會輸出

Array
(
    [name] => swk
)
  1. 特別說明

返回的新陣列的鍵名是保持不變的

一夢千年系列

array_flip4

交換陣列的鍵名和鍵值

  1. 說明
array_flip(array $array) : array
  1. 引數

array需要交換鍵名和鍵值的陣列

  1. 返回值

返回一個數組,鍵名和鍵值進行交換,交換以後如果鍵名不合法,則自動刪除不合法元素,並報警告,如果鍵名重複,後面的覆蓋前面的,如果失敗返回null

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

$newArray = array_flip($array);

print_r($newArray);

以上範例輸出

Array
(
    [swk] => name
    [27] => age
    [1] => sex
)
  1. 特別說明

鍵名不合法時,過濾掉該元素,鍵名重複時後面覆蓋前面的

一夢千年系列

array_intersect_assoc5

帶索引檢查計算陣列的交集

  1. 說明
array_intersect_assoc(array $array, array $array2, array ...) : array
  1. 引數

array要檢查得到的陣列

array2被比較使用的陣列

...更多比較使用的陣列

  1. 返回值

返回一個存在於array中,同時也存在於其它陣列的元素陣列

  1. 範例
<?php
$array = [
    'name' => 'swk',
    'age' => 27,
    'sex' => 1
];

$array2 = [
    'name' => 'swk'
];

$newArray = array_intersect_assoc($array, $array2);

print_r($newArray);

以上範例輸出

Array
(
    [name] => swk
)
  1. 特別說明

鍵名和鍵值都會進行比較