在大约一年的 OO-PHP 经验之后,我只是向 ZF 介绍自己。我开始使用的这本书:
<?=
在地方而不是
<?php echo
作者似乎很有信心这将输出数据,而不是实际代码,但是,它似乎对我不起作用,因为我不得不使用普通方法。
有没有人成功地使用前者而不是后者?关于配置等的任何建议......可能会导致这对我造成破坏?已安装 ZF 1.11.11
在大约一年的 OO-PHP 经验之后,我只是向 ZF 介绍自己。我开始使用的这本书:
<?=
在地方而不是
<?php echo
作者似乎很有信心这将输出数据,而不是实际代码,但是,它似乎对我不起作用,因为我不得不使用普通方法。
有没有人成功地使用前者而不
在大约一年的 OO-PHP 经验之后,我只是向 ZF 介绍自己。我开始使用的这本书:
<?=
在地方而不是
<?php echo
作者似乎很有信心这将输出数据,而不是实际代码,但是,它似乎对我不起作用,因为我不得不使用普通方法。
有没有人成功地使用前者而不是后者?关于配置等的任何建议......可能会导致这对我造成破坏?已安装 ZF 1.11.11
(1) 我在集合中添加了以下内容:
{ "_id" : 1, "hitsPerOneSecond" : [ 2, 3, 5, 4, 1, 2, 3, 4, 1, 2 ], "startTime" : ISODate("2012-04-07T10:41:33.380Z"), "returnCodeHits" : { "300" : 5, "200" : 12 }, "xxxServer" : "xxx:8100", "statsSummarizedToSeconds" : 10, "pathStats_xxx_api_get_version" : [ 0.2280779683225852, 0.030849283020361273, 0.9947690473370484 ], "pathStats_xxx_api_get_response" : [ 1.2163705612407407, 1.0602539963494662, 1.4853219936411421 ], "type" : "xxxType", "startTimeStr" : "07-04-2012:10AM" }
{ "_id" : 2, "hitsPerOneSecond" : [ 2, 3, 5, 4, 1, 2, 3, 4, 1, 2 ], "startTime" : ISODate("2012-04-07T10:41:43.380Z"), "returnCodeHits" : { "300" : 5, "200" : 12 }, "xxxServer" : "xxx:8100", "statsSummarizedToSeconds" : 10, "pathStats_xxx_api_get_version" : [ 0.2280779683225852, 0.030849283020361273, 0.9947690473370484 ], "pathStats_xxx_api_get_response" : [ 1.2163705612407407, 1.0602539963494662, 1.4853219936411421 ], "type" : "xxxType", "startTimeStr" : "07-04-2012:10AM" }
(2) 进行以下聚合时:
db.newStats.aggregate({$unwind: "$hitsPerOneSecond"},{$group:{_id:"$startTimeStr", totalHits: {$sum: "$hitsPerOneSecond"}, totalHitsCount: {$sum: 1}, avgHit: {$avg: "$hitsPerOneSecond"}, minHit: {$min:"$hitsPerOneSecond"}, maxHit:{$max: "$hitsPerOneSecond"}}});
(3) 结果正确:
{
"result" : [
{
"_id" : "07-04-2012:10AM",
"totalHits" : 54,
"totalHitsCount" : 20,
"avgHit" : 2.7,
"minHit" : 1,
"maxHit" : 5
}
],
"ok" : 1
}
(4) 但是,我需要在上面的同一聚合中对“pathStats_xxx_api_get_response”(来自集合)执行展开,以便在上面的相同结果中输出 totalResponses、totalResponsesCount、avgResponse、minResponse 和 maxResponse。因此,我的结果应该是这样的:
{
"result" : [
{
"_id" : "07-04-2012:10AM",
"totalHits" : 54,
"totalHitsCount" : 20,
"avgHit" : 2.7,
"minHit" : 1,
"maxHit" : 5,
"totalResponses" : ??
"totalResponsesCount": ??
"avgResponse" : 2.7,
"minResponse" : 1,
"maxResponse" : 5
}
],
"ok" : 1
}
不确定如何在与我几乎相同的聚合中添加更多 $unwind !
是的,<?=
应该可以正常工作:
但是请注意,在 PHP 5.4.0 之前,short_open_tag
必须On
在 php.ini 中才能正常工作:
http://www.php.net/manual/en/ini.core.php#ini.short-open-tag
祝你好运!