web-dev-qa-db-ja.com

日付形式の変更laravel 5

日付の形式を変更したいのですが、何か問題があります。これは私の見解:

  @foreach ($posts as $post)
                    <tr>
                      <td>
                      <?php echo $post->id?>
                      </td>
                      <td class="mailbox-star"><?php echo $post->nama?></td>
                      <td class="mailbox-name"><?php echo $post->tanggal?></td>
                      <td class="mailbox-subject"><?php echo $post->deskripsi?></td>
                      <td class="mailbox-date"><?php echo $post->mulai?> - <?php echo $post->durasi?></td>
                      <td class="mailbox-date"><?php echo $post->total?> Jam</td>
                      <td class="mailbox-date">
                      <a href="<?php echo url('user/detail/'.$post->nama)?>" class="btn btn-xs btn-danger"><i class="fa fa-search-plus"></i></a>
                      <a href="<?php echo url('user/edit/'.$post->id)?>" class="btn btn-xs btn-success"><i class="fa fa-pencil-square-o"></i></a>
                      <a href="<?php echo url('user/delete/'.$post->id) ?>" class="btn btn-xs btn-warning"><i class="fa fa-times"></i></a>
                      </td>
                    </tr>
                    @endforeach

そして私のコントローラー:

    public function getIndex()
    {   
        $posts = DB::table("lembur_karyawan")
        ->orderBy('id', 'desc')
        ->paginate(6);

        return view('user',['posts'=>$posts]);
    }

これは私の見解と私がやりたいこと:

enter image description here

誰かがカーボンを使うように言ったら、それを使う方法を説明してください?

注意:私はlaravel 5.1を使用しています

7
ivan setiadi

これを試して:

<?php echo date('d F Y', strtotime($post->tanggal)); ?>

どこ

  • d-月の日(01から31まで)
  • F-月の完全なテキスト表現(1月から12月まで)
  • Y-年を表す4桁の数字
11
prava
//replace
<td class="mailbox-name"><?php echo $post->tanggal?></td>
//to 
<td class="mailbox-name"><?php echo date('d M Y',strtotime($post->tanggal)); ?></td>
9
ImBhavin95

Php Carbon日付形式をビューファイルで使用することをお勧めします。

_<?php echo $post->tanggal?>_が日付を取得する場合:

これは動作します:

<?php echo Carbon\Carbon::createFromFormat('Y-m-d', $post->tanggal)->format('d M Y') ?>

上記はあなたが望むのと同じ出力を返します。

さらにフォーマットを変更したい場合。次に、この link が役立ちます。

CarbonはPHP DateTimeクラスから継承されています。したがって、laravelを使用している場合は、Carbonを使用することをお勧めします。

6
Srijan Karki

これはあなたの問題を100%解決します

{{ date('jS F Y',strtotime($post->tanggal)) }}
5

Eloquentを使用できる場合、列をCarbon日付オブジェクトに自動的にキャストできます。

Postモデルが必要であり、日付にキャストされる列にtanggalが含まれていることを確認する必要があります。

class Post extends Model {

    protected $dates = ['tanggal'];

次にLaravelは日付を自動的にCarbonオブジェクトに変換します。これにより、あらゆる種類の便利な関数にアクセスできます。

次に、ビュー内で日付を後の形式で出力します。

$post -> tanggal -> format('d m Y');

Carbonが提供する便利なメソッドの詳細については、こちらをご覧ください。 http://carbon.nesbot.com/docs/

そして、formatに渡される引数内のどの文字がここで何をするかを見つけることができます: http://php.net/manual/en/function.date.php

5
Matt McDonald

このフォーマットを使用

echo date('jS F Y',strtotime($post->tanggal));

http://php.net/manual/en/function.date.php

4
Moauya Meghari