我在我的数据库中有PLAYERS表和SCORES表。
在SCORES表中,我有这些行:ID - IDPLAYER - SCORE。
例如:
我有一个带有ORM的实体,它很好。
我有一个控制器,其中包含此函数:
但我遇到了一个错误:
我得到了这个:
这是正确的平均值,但是[[{"1":" and "}]]是什么?
在SCORES表中,我有这些行:ID - IDPLAYER - SCORE。
例如:
ID IDPLAYER SCORE
---------------------
1 1 5
2 2 4
3 1 3
4 2 1
5 1 9
我想在模板中添加以下内容:
对于“玩家1”,有3个分数。
分数的总数为“17”(9+3+5)。
该玩家的得分平均值为“5.6”(17总分数 / 3计分次数)。
我有一个带有ORM的实体,它很好。
我有一个控制器,其中包含此函数:
public function avgScoreAction($id) {
$queryScore = $this->getDoctrine()
->getRepository('AcmeBundle:tabScores');
$queryAvgScore = $queryScore->createQueryBuilder('g')
->select("avg(g.score)")
->where('g.idPlayer = :idPlayer')
->setParameter('idPlayer', $id)
->getQuery();
$avgScore = $queryAvgScore->getResult();
$result = ("Score average: ".$avgScore);
return new Response($result);
但我遇到了一个错误:
"Notice: Array to string conversion in this line:"
$result = ("Score average: ".$avgScore);
If I write this:
$response = new Response();
$response->setContent(json_encode(array($avgScore)));
$response->headers->set('Content-Type', 'application/json');
return $response;
我得到了这个:
[[{"1":"5.6667"}]]
这是正确的平均值,但是[[{"1":" and "}]]是什么?
$avgScore["avg_score"]
和$avgScore["count_score"]
。如果不起作用,请在该行之前添加此代码片段并发布输出:var_dump($avgScore);exit;
- S.Thiongane[0]
,则必须通过提供实体来自定义选择... - S.Thiongane