- 數組內容去重
$a = [1,2,3,3,4,5,5,5,7,4];
$result = array_unique($a);
//$result = [1,2,3,4,5,7];
- 數組中是否存在某個鍵
if(array_key_exists('key', $array))
{
//do something
}
- 查找一個值在數組中的位置
$position = array_search($value, $array)
//一定要強等於或強不等於,因爲返回index=0的時候,邏輯判斷等於false
if ($position !== false)
{
//found it, do something
}
- 數組元素亂序
shuffle($array);
- 求兩個數數組的並集
$union = array_unique(array_merge($a, $b));
- 求兩個數組的交集
$intersection = array_intersect($a, $b);
- 求簡單差集
$differece = array_diff($a, $b);
- 求對稱差集
$difference = array_merge(array_diff($a, $b), array_diff($b, $a));
- 對數據庫的查詢結果替換字段名
$res = [
[
'phone' => '13833333333',
'nickname' => 'Bob',
'is_remember' => 1
],[
'phone' => '13866666666',
'nickname' => 'Alice',
'is_remember' => 0
]
];
$result = array_map(function($item){
return [
'account' => $item['phone'],
'nickname' => $item['nickname'],
'is_remember' => (bool)$item['is_remember']
];
}, $res)
//$result = [
// [
// 'account' => '13833333333',
// 'nickname' => 'Bob',
// 'is_remember' => 1
// ],[
// 'account' => '13866666666',
// 'nickname' => 'Alice',
// 'is_remember' => 0
// ]
//];
- 獲取某一列的數據
$res = [
[
'phone' => '13833333333',
'nickname' => 'Bob',
'is_remember' => 1
],[
'phone' => '13866666666',
'nickname' => 'Alice',
'is_remember' => 0
]
];
$result = array_column($res,'phone');
//$result = ['13833333333','13866666666'];
參考:
[1] https://www.php.net/manual/zh/book.array.php
[2] PHP經典實例第三版[M]. 2015