gpt4 book ai didi

php - 如何查找数组项以特定字母开头的所有场合

转载 作者:行者123 更新时间:2023-12-03 09:03:24 25 4
gpt4 key购买 nike

我想知道我在这里所做的事情是否还有其他解决方案:

$aArray = array(
array('Name' => 'Apple', 'Count' => 10)
array('Name' => 'Tomato', 'Count' => 23)
array('Name' => 'Tree', 'Count' => 4)
array('Name' => 'Potato', 'Count' => 44)
array('Name' => 'Apple', 'Count' => 73)

//Generate string with the 'Name's'
$aNamesMain = [];
$nCounterMain = 0;
$aNamesMain = array_merge($aNamenMais, array_keys($aArray['Name']));

foreach($aNamesMain as $name) {
// Check to see which items start with an A
if (substr('$name', 0, 1) === 'A') { $nCounterMain++; }
}

所以我想知道在我的数组中以特定字母开头的 'Name' => 位置处找到某个项目的次数。在本例中是A。但是当我现在让它工作时,就像我上面发布的那样,但是没有更好的方法来实现这一点吗?

一些数组函数或其他东西,因为我一直在尝试 PHP 手册中的一些函数,但现在似乎找不到更好的解决方案。

这样我就不必使用foreach或摆脱数组合并。

如果这不是主题并且需要在代码审查页面上发布,请告诉我,但我认为这是与编程相关的东西。

最佳答案

您可以使用array_filteranonymous function解决这个问题:

//your array containing the items.
$aArray = array(
array('Name' => 'Apple', 'Count' => 10),
array('Name' => 'Tomato', 'Count' => 23),
array('Name' => 'Tree', 'Count' => 4),
array('Name' => 'Potato', 'Count' => 44),
array('Name' => 'Apple', 'Count' => 73)
);

//the character or string you want to search.
$startWithChar = 'A';

//get all items of the array starting with the specified character or string.
$newArray = array_filter($aArray, function($v) use ($startWithChar) {
return strpos($v['Name'], $startWithChar) === 0;
});

echo count($newArray); //2

demo: https://ideone.com/EctCs7

关于php - 如何查找数组项以特定字母开头的所有场合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48707285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com