如何从数组中筛选出包含特定字符"{"的元素?
如何筛选包含特定字符"{"的PHP数组元素?
嘿,这事儿好办!先确认下你给出的原始数组:
array(3) { [0]=> string(6) "{what}" [1]=> string(5) "[why]" [2]=> string(5) "(how)" }
下面给你几种实用的筛选方案,按需选择就行:
方法1:array_filter() + strpos()(最常用)
这是PHP处理数组筛选的标准操作,用匿名函数配合字符串查找逻辑:
$originalArray = ["{what}", "[why]", "(how)"]; $filteredArray = array_filter($originalArray, function($item) { // 注意用!== false,避免元素开头就是目标字符时(位置为0)被误判为不存在 return strpos($item, "{") !== false; }); // 输出结果:只会保留"{what}"这个元素 print_r($filteredArray);
方法2:手动foreach遍历(新手友好)
如果想更直观理解筛选过程,用循环手动收集符合条件的元素:
$originalArray = ["{what}", "[why]", "(how)"]; $filteredArray = []; foreach ($originalArray as $item) { if (strpos($item, "{") !== false) { $filteredArray[] = $item; } } print_r($filteredArray);
方法3:PHP 8+ 用str_contains()更简洁
如果你用的是PHP 8或更高版本,可以用更直观的str_contains()函数,代码更精简:
$originalArray = ["{what}", "[why]", "(how)"]; // 箭头函数+str_contains,一行搞定筛选 $filteredArray = array_filter($originalArray, fn($item) => str_contains($item, "{")); print_r($filteredArray);
这几种方法最终都会得到你想要的结果:只保留包含"{"的数组元素~
内容的提问来源于stack exchange,提问作者Dwi Yudi Rayi A
相关产品推荐
相关产品推荐

