PHP:array数组的增、删、改、查操作

举报
彭世瑜 发表于 2021/08/14 00:18:21 2021/08/14
【摘要】 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_e...

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)

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

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

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

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

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

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



  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

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

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

参考
PHP 删除数组中的元素

文章来源: pengshiyu.blog.csdn.net,作者:彭世瑜,版权归原作者所有,如需转载,请联系作者。

原文链接:pengshiyu.blog.csdn.net/article/details/117460854

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。