G.W*_*G.W 20 php count multidimensional-array facebook-graph-api find-occurrences
有谁知道如何计算此数组中"photo"的出现次数:
Array (
[0] => stdClass Object ( [type] => photo [id] => 1404781893036 [created_time] => 2012-03-02T07:58:23+0000 )
[1] => stdClass Object ( [type] => photo [id] => 14047818930362 [created_time] => 2012-03-01T14:58:53+0000 )
[2] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-03-01T09:49:40+0000 )
[3] => stdClass Object ( [type] => status [id] => 14047818930362 [created_time] => 2012-03-01T09:36:04+0000 )
[4] => stdClass Object ( [type] => photo [id] => 14047818930362 [created_time] => 2012-02-28T07:03:25+0000 )
[5] => stdClass Object ( [type] => photo [id] => 1404781893036 [created_time] => 2012-02-27T09:15:34+0000 )
[6] => stdClass Object ( [type] => photo [id] => 14047818930362 [created_time] => 2012-02-27T07:32:13+0000 )
[7] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-02-25T09:36:57+0000 )
[8] => stdClass Object ( [type] => photo [id] => 1404781893036 [created_time] => 2012-02-23T08:46:43+0000 )
[9] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-02-22T21:04:30+0000 )
[10] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-02-21T20:38:27+0000 )
[11] => stdClass Object ( [type] => photo [id] => 1404781893036 [created_time] => 2012-02-21T07:22:44+0000 )
[12] => stdClass Object ( [type] => status [id] => 14047818930362 [created_time] => 2012-02-20T08:32:46+0000 )
[13] => stdClass Object ( [type] => status [id] => 1404781893036 [created_time] => 2012-02-17T15:00:11+0000 ) )
Run Code Online (Sandbox Code Playgroud)
Roo*_*dra 56
要计算多维数组中字符串的匹配出现次数,您需要迭代每个数组元素并匹配字符串并增加计数.同样@Dor建议
$count = 0;
foreach ($array as $item) {
if ($item->type === 'photo') {
$count++;
}
}
Run Code Online (Sandbox Code Playgroud)
如果你想在单维数组中实现相同,那么它非常简单.您可以使用array_count_values PHP数组函数,如下所述.
<?php
$array = array(1, "test", 1, "php", "test");
print_r(array_count_values($array));
?>
Run Code Online (Sandbox Code Playgroud)
上面的例子将输出:
Array
(
[1] => 2
[test] => 2
[php] => 1
)
Run Code Online (Sandbox Code Playgroud)
Dor*_*mer 15
$count = 0;
foreach ($array as $item) {
if ($item->type === 'photo') {
$count++;
}
}
Run Code Online (Sandbox Code Playgroud)