【问题标题】:Laravel display all data in a clean arrayLaravel 在一个干净的数组中显示所有数据
【发布时间】:2015-07-19 16:21:14
【问题描述】:

我想以简洁的方式显示查询中的所有数据。所以我想要这个输出:

[
{"date":"2015-05-01","count(ip)":1},
{"date":"2015-05-02","count(ip)":1},
{"date":"2015-05-03","count(ip)":3},
{"date":"2015-05-04","count(ip)":1},
{"date":"2015-05-06","count(ip)":2},
{"date":"2015-05-07","count(ip)":1},
{"date":"2015-05-08","count(ip)":1}
]

变成这样:

["2015-05-01", 1],
["2015-05-02", 1],
["2015-05-03", 3],
["2015-05-04", 1],
["2015-05-06", 2],
["2015-05-07", 1],
["2015-05-08", 1]

这样所有值都适用于我的 javascript 代码。

我的查询是这样的:

$begin = date('Y-m-01');
$end = date('Y-m-t');

$visits = Tracker::selectRaw('date, count(ip)')->groupBy('date')->whereRaw("date between '$begin' and '$end'")->get();

我在 Laravel 视图中得到的数据只是我的查询的输出,所以 {{ $stats }} 是我认为的。问题是,我怎样才能以我想要的方式输出值? (见上文)

谢谢!

【问题讨论】:

标签: javascript php laravel laravel-4


【解决方案1】:

最快最简单的方法是在视图中完全按照您的需要打印数组:

 @foreach ($stats as $stat)
      ["{{ date('d/m', strtotime($stat['date'])) }}", {{ $stat['count(ip)'] }}],
 @endforeach

【讨论】:

  • 感谢您的快速响应!这对我有用,除了我希望将日期 (yyyy-mm-dd) 更改为 dd/mm 我可以通过 Javascript 执行此操作吗?
  • 如果我的回答对您有所帮助 - 请不要忘记投票并接受它。谢谢:)
猜你喜欢
  • 2022-01-11
  • 2012-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多