一夢千年系列
今日函數
array_key_last、array_keys、array_map、array_merge_recursive、array_merge
array_key_last1
獲取數組中的最后一個鍵名
- 說明
 
array_key_last(array $array) : mixed
 
        - 參數
 
array需要操作的數組
- 返回值
 
返回數組中最有一個鍵名,如果數組為空,則返回null
- 范例
 
$array = [
    'name' => 'swk',
    'age' => 22,
    'sex' => 1
];
$res = array_key_last($array);
var_dump($res);
 
        以上范例會輸出
string(3) "sex"
 
        - 特別注意
 
不會影響原數組的內部指針
array_keys2
返回數組中所有或者部分鍵名組成的數組
- 說明
 
array_keys(array $array) : array
 
         
         
        array_keys(array $array, mixed $value, bool $strict = false) : array
 
        - 參數
 
array需要操作的數組
value如果指定了這個參數,只有包含這個鍵值的鍵名才會返回
strict是否嚴格比較
- 返回值
 
返回一個數組,包含所有或者部分鍵名組成的數組
- 范例
 
$array = [
    'name' => 'swk',
    'age' => 22,
    'sex' => 1
];
$res = array_keys($array);
print_r($res);
 
        以上范例會輸出
Array
(
    [0] => name
    [1] => age
    [2] => sex
)
 
        - 特別注意
 
沒有特別注意的地方
array_map3
為數組中每個元素應用回調函數
- 說明
 
array_map(callback $func, array $array, array ...) : array
 
        - 參數
 
func回調函數,應用到數組中的每個元素上
array需要遍歷的數組
...更多需要遍歷的數組
- 返回值
 
返回一個新數組,經過回調函數處理的數組
- 范例
 
$array = [1, 2, 3, 4];
function func($a)
{
    return $a * $a;
}
$newArray = array_map('func', $array);
print_r($newArray);
 
        以上范例輸出
Array
(
    [0] => 1
    [1] => 4
    [2] => 9
    [3] => 16
)
 
        - 特別說明
 
如果只有一個數組,並且這個數組的鍵名時候字符串的話,新數組會保留原鍵名。如果是多個數組,數組長度不一樣的話,短的數組會被null補充。如果回調函數是null,則會合並數組
array_merge_recursive4
遞歸的合並一個或者多個數組,如果有相同的鍵名,則鍵值合並為新數組,不會覆蓋
- 說明
 
array_merge_recursive(array ...) : array
 
        - 參數
 
...需要合並的數組,可以不傳,或者1個,或者多個
- 返回值
 
返回一個遞歸合並的數組
- 范例
 
$array1 = [
    'info' => [
        'name' => 'swk',
        'age' => 22
    ]
];
$array2 = [
    'info' => [
        'name' => 'zbj',
        'age' => 22
    ]
];
$newArray = array_merge_recursive($array1, $array2);
print_r($newArray);
 
        以上范例輸出
Array
(
    [info] => Array
        (
            [name] => Array
                (
                    [0] => swk
                    [1] => zbj
                )
            [age] => Array
                (
                    [0] => 22
                    [1] => 22
                )
        )
)
 
        - 特別說明
 
如果不傳參數,則返回一個空數組
array_merge5
數組合並,相同的鍵名,后面的鍵值覆蓋前面的
- 說明
 
array_merge(array ...) : array
 
        - 參數
 
...需要合並的數組
- 返回值
 
返回一個數組,相同的鍵名后面的覆蓋前面的
- 范例
 
$array1 = [
    'info' => [
        'name' => 'swk',
        'age' => 22
    ]
];
$array2 = [
    'info' => [
        'name' => 'zbj',
        'age' => 22
    ]
];
$newArray = array_merge($array1, $array2);
print_r($newArray);
 
        以上范例輸出
Array
(
    [info] => Array
        (
            [name] => zbj
            [age] => 22
        )
)
 
         
         
        - 特別說明
 
如果不傳參數,則返回一個空數組
