我有一个多维数组( Google数据),如下所示:
Array
(
[0] => gapiReportEntry Object
(
[metrics:gapiReportEntry:private] => Array
(
[uniquePageviews] => 1
[visitors] => 1
[pageviews] => 1
)
[dimensions:gapiReportEntry:private] => Array
(
[pagePath] => /107483
)
)
[1] => gapiReportEntry Object
(
[metrics:gapiReportEntry:private] => Array
(
[uniquePageviews] => 1
[visitors] => 1
[pageviews] => 1
)
[dimensions:gapiReportEntry:private] => Array
(
[pagePath] => /754985
)
)我要做的是搜索数组,看看是否基于数据库中的一些条目在pagePath元素中找到了匹配项。如果找到匹配项,我希望从该数组中打印访问者。如果没有找到匹配项,我希望返回一个0的数字。
这是不正确的,但希望能说明我正在努力实现的目标:
<?php
if(in_array($value['Identifier'],$metrics['pagePath')) {
$metrics['pagePath')
}else{
echo "0";
}
?>总的来说,我试图实现的是一个基于网页的数据表和相应的分析结果。
发布于 2013-11-27 17:46:29
您可以在array_filter()函数中找到帮助。这将允许您根据特定的条件筛选对象数组。一个例子可能如下所示:
$page_path = '/12345'; // the page path you are interested in
$metrics = ...; // your array of objects
$filtered_array = array_filter($metrics, function ($item) use $page_path {
return ($item['dimensions:gapiReportEntry:private']['pagePath'] == $page_path);
}您现在只有$filtered_array中具有匹配页路径的对象。
您可以迭代该数组并提取如下所有访问者的信息:
$visitors = array();
foreach($filtered_array as $item) {
$visitors[] = $item['metrics:gapiReportEntry:private']['visitors'];
}https://stackoverflow.com/questions/20249228
复制相似问题