更改php

时间:2017-04-17 09:39:34

标签: php laravel

你好,我需要帮助格式化我的日期才能到达客户端。基本上在从数据库中获取值之后,我想在我的日程之前格式化我的日期,就像我在这里做的那样。

public function filterDataCal(Request $request) {

      $filtered_table = Method::leftJoin('users', 'users.id', '=', 'methods.created_by')
      ->leftJoin('roles', 'roles.id', '=', 'users.role_id')
      ->leftJoin('types', 'types.id', '=', 'methods.type_id')
      ->where('type_id', '=', $request->filters['type_id'])
      ->get([ 'users.username', 'users.id AS users_id', 'methods.*', 'methods.id AS method_id', 'methods.name AS method_name', 'roles.id AS role_id', 'roles.name AS role_name',
      'types.id AS type_id_typetable', 'types.name AS type_name']);
      if($filtered_table) {
        // for ($i=0; $i < sizeof($filtered_table); $i++){
        //
        //   // foreach ($filtered_table as $value[i]) {
        //   //   $value[i]->created_at->format("m/d/Y h:i A");
        //   // }
        // }
        foreach($filtered_table as $data) {
          $data->created_at = $data->created_at->format('m/d/y h:i A');
        }
        return $filtered_table;
      } else {
        return "";
      }
    }

我不确定我需要做什么样的语法来更改我从数据库中获取的日期的格式,所以我做的是foreach然后$data->created_at = $data->created_at->format('m/d/y h:i A');但是唉它赢了“经过,你能帮助我将该属性(created_at)更改为其他格式吗?也许我的语法有问题,或者我有一个不同的方法。谢谢。

3 个答案:

答案 0 :(得分:1)

语法没有错。您可以简单地打印日期,然后返回收集。

body {
    background-color:#ddd;
    margin: 0px;     /* add this line */
}

如果您需要在返回集合时自定义格式,则可以在模型上设置foreach($filtered_table as $data) { echo $data->created_at->format('m/d/y h:i A'); } 属性。请参阅文档中的Date Mutators

答案 1 :(得分:0)

您需要返回$data->created_at而不是$filtered_table

让我告诉你为什么,你格式化了日期并将其存储到变量名称$data->created_at中,但是你要返回$filtered_table,这实际上是原始日期(你从未格式化过)。

希望有所帮助:)

答案 2 :(得分:0)

我最终使用名为moment.js的库来格式化js中的日期

Javascript format date / time