php - 数组 - 只保留键“别名”以“a”开头的条目
问题描述
我刚刚意识到我并不熟悉 php-arrays 的术语。所以我希望你们能得到我想要达到的目标。
我有一个这样的数组,其中包含更多“条目”:
Array (
[id] => 385
[tag] => Aya Cissoko (Frankreich)
[label] => Aya Cissoko (Frankreich)
[alias] => aya-cissoko-(frankreich)
[group] => 4
[rank] => 266
[group_id] => 4
[group_name] => Künstler
[group_alias] => kuenstler
[group_field_type] => tagger-field-tags
[group_allow_new] => 1
[group_remove_unused] => 0
[group_allow_blank] => 1
[group_allow_type] => 1
[group_show_autotag] => 0
[group_hide_input] => 0
[group_tag_limit] => 0
[group_show_for_templates] => 3,36,44
[group_place] => below-content
[group_position] => 3
[group_description] => Vor- und Nachname (Land) - Beispiel: "Eli Abeke (D)"
[group_in_tvs_position] => 9999
[group_as_radio] => 0
[group_sort_field] => alias
[group_sort_dir] => asc
[group_show_for_contexts] => sa
[cnt] => 1
)
Array (
[id] => 59
[tag] => Babangoni wawa Chisale (Malawi)
[label] => Babangoni wawa Chisale (Malawi)
[alias] => babangoni-wawa-chisale-(malawi)
[group] => 4
[rank] => 18
[group_id] => 4
[group_name] => Künstler
[group_alias] => kuenstler
[group_field_type] => tagger-field-tags
[group_allow_new] => 1
[group_remove_unused] => 0
[group_allow_blank] => 1
[group_allow_type] => 1
[group_show_autotag] => 0
[group_hide_input] => 0
[group_tag_limit] => 0
[group_show_for_templates] => 3,36,44
[group_place] => below-content
[group_position] => 3
[group_description] => Vor- und Nachname (Land) - Beispiel: "Eli Abeke (D)"
[group_in_tvs_position] => 9999
[group_as_radio] => 0
[group_sort_field] => alias
[group_sort_dir] => asc
[group_show_for_contexts] => sa
[cnt] => 1
)
我想保留所有条目,其中“别名”以“a”开头并摆脱数组的其余部分,但保留数组的“结构”,因为我需要与每个相关的所有其他键和值“入口”。
我怎样才能完成这项工作?
解决方案
您可以通过将条目array_filter
的第一个字母与以下内容进行比较来从数组中删除不需要的元素:alias
a
$out = array_filter($array, function ($value) {
return $value['alias'][0] == 'a';
});
如果您想要不区分大小写的比较(因此它也匹配A
),请使用strtolower
:
$out = array_filter($array, function ($value) {
return strtolower($value['alias'][0]) == 'a';
});
print_r($out);
推荐阅读
- django - ReactJS 和 Django 与 Axios - CSRF 令牌和带有 POST 请求的表单数据
- php - 如何修复 'WebSocket 连接到 'wss://
'失败:WebSocket 打开握手超时'? - amazon-ec2 - AWS 上的 NVMe 到底是什么?
- typescript - 如何对firebase firestore中的节点求和?
- java - 如何用复杂的 json 填充 Jtable
- laravel - 如何允许外部自定义域在我的服务器上运行 Laravel 应用程序?
- git - 在 Git Bash 中向 Azure DevOps 创建拉取请求
- c# - ASP.NET CORE 中的 Unity(依赖注入)就像我们在 ASP.NET 框架中所拥有的一样
- python - Numpy 数组引用在 for 循环中表现异常
- javascript - 如何将 JSON 数据从 express 传递到 pug 中的 javascript/jQuery 脚本?