PHP中常用的array操作

  1. 數組內容去重
$a = [1,2,3,3,4,5,5,5,7,4];
$result = array_unique($a);
//$result = [1,2,3,4,5,7];
  1. 數組中是否存在某個鍵
if(array_key_exists('key', $array))
{
	//do something
}
  1. 查找一個值在數組中的位置
$position = array_search($value, $array)
//一定要強等於或強不等於,因爲返回index=0的時候,邏輯判斷等於false
if ($position !== false)
{
	//found it, do something
}
  1. 數組元素亂序
shuffle($array);
  1. 求兩個數數組的並集
$union = array_unique(array_merge($a, $b));
  1. 求兩個數組的交集
$intersection = array_intersect($a, $b);
  1. 求簡單差集
$differece = array_diff($a, $b);
  1. 求對稱差集
$difference = array_merge(array_diff($a, $b), array_diff($b, $a));
  1. 對數據庫的查詢結果替換字段名
$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
//	]
//];
  1. 獲取某一列的數據
$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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章