1、查找数组中的键或值
$data = [ 'name'=> 'Tom' ]; // 检查键 var_dump(array_key_exists('name', $data)); // bool(true) var_dump(array_key_exists('Tom', $data)); // bool(false) var_dump(array_key_exists('uid', $data)); // bool(false) // 检查值 var_dump(in_array('name', $data)); // bool(false) var_dump(in_array('Tom', $data)); // bool(true) var_dump(in_array('uid', $data)); // bool(false)
2、数组删除
2.1、普通数组删除
$data = ['Tom', 'Jack', 'Steve']; print_r($data); // [0] => Tom // [1] => Jack // [2] => Steve // 数组的键会自动重新建立索引,对关联性的数组不起作用 array_splice($data, 1, 1); print_r($data); // [0] => Tom // [1] => Steve
2.2、关联数组删除
$data = [ 'name' => 'Tom', 'age' => 23, 'school' => 'pku' ]; print_r($data); // [name] => Tom // [age] => 23 // [school] => pku // 两种方式 用键删除或用索引删除 // unset($data['age']); array_splice($data, 1, 1); print_r($data); // [name] => Tom // [school] => pku
3、返回新数组
3.1、通过值删除
$data = [ 'name' => 'Tom', 'age' => 23, 'school' => 'pku' ]; print_r($data); // [name] => Tom // [age] => 23 // [school] => pku // 通过值删除 $newData = array_diff($data, ['Tom', 'pku']); print_r($data); // [name] => Tom // [age] => 23 // [school] => pku print_r($newData); // [age] => 23
3.2、通过键删除
$data = [ 'name' => 'Tom', 'age' => 23, 'school' => 'pku' ]; print_r($data); // [name] => Tom // [age] => 23 // [school] => pku // 通过键删除 $newData = array_diff_key($data, ['name'=> '', 'school'=> '']); print_r($data); // [name] => Tom // [age] => 23 // [school] => pku print_r($newData); // [age] => 23
参考