Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax 如何像facebook一样计算日期/时间(3天前等)_Ajax_Laravel 5.1 - Fatal编程技术网

Ajax 如何像facebook一样计算日期/时间(3天前等)

Ajax 如何像facebook一样计算日期/时间(3天前等),ajax,laravel-5.1,Ajax,Laravel 5.1,我是php的新手,当然我也是laravel的新手。不管怎样,我有个问题。在一些文档中,人们使用diffForHuman。不幸的是,当我使用它时,我总是得到错误500。我想像facebook一样计算日期/时间,例如:3天前,等等 这是我的控制器: public function show(Request $request) { if($request->ajax()){ $searchs = $request->get('search'); $

我是php的新手,当然我也是laravel的新手。不管怎样,我有个问题。在一些文档中,人们使用diffForHuman。不幸的是,当我使用它时,我总是得到错误500。我想像facebook一样计算日期/时间,例如:3天前,等等

这是我的控制器:

    public function show(Request $request)
{
 if($request->ajax()){
        $searchs = $request->get('search');
        $search = $searchs['value'];
        \DB::statement(\DB::raw('set @nomor = 0'));

        $index = DB::table('tb_jabatan_karyawan')
                ->leftJoin('tb_jabatan','tb_jabatan.id','=','tb_jabatan_karyawan.id_jabatan')
                ->leftJoin('tb_karyawan','tb_karyawan.id','=','tb_jabatan_karyawan.id_karyawan')
                ->select([
                    \DB::raw('@nomor := @nomor + 1 as no'),

                    'tb_jabatan_karyawan.id as id',
                    'tb_jabatan_karyawan.id_karyawan as id_karyawan',
                    'tb_jabatan_karyawan.id_jabatan as id_jabatan',
                    'tb_karyawan.nama as nama',
                    'tb_karyawan.status_karyawan as status',
                    'tb_jabatan.nama_jabatan as jabatan',
                    'tb_karyawan.tgl_masuk as lama'
                    ]);
            //dd(Carbon::parse($index->lama)->diffForHumans());
        return Datatables::of($index)
            ->edit_column('no', function($index){
                return '<center>'.$index->no.'</center>';
            })
            ->edit_column('nama', function($index){
                return ucwords($index->nama);
            })
            ->edit_column('status', function($index){
                return ucwords($index->status);
            })
            ->editColumn('lama', function ($index) {
            return $index->lama->diffForHumans();
            })
            ->filter(function ($query) use ($request){
                if ($request->get('search')['value']){
                  $query->where('nama', 'like', "%{$request->get('search')['value']}%");
                }
            })
            ->addColumn('action', function($index){
                $tag = "<center><a class='btn btn-info btn-xs' onclick=atur('".$index->id_karyawan."','".$index->id_jabatan."')><i class='fa fa-pencil'></i> Proses</a></center>";
                return $tag;
            })
        ->make(true);
    }
}

我希望有人能帮我解决这个问题。无论如何谢谢你

好吧,你的$index->lama需要是一个碳对象。所以试试看 \Carbon\Carbon::createFromFormat'Y-m-dh:i:s',$index->lama->diffForHumans;假设数据库中的日期以Y-m-d H:i:s格式存储

    function getData(){
table = $('#table').DataTable({
    dom: "lBfrtip",
    processing: true,
    serverSide: true,
    destroy: true,
    bFilter:true,
    searching: true,
    order: [],
    ajax: base_adm+'kelola/pengunduran-karyawan/show',

    columns: [
        {data: 'no', name: 'no', orderable: true, searchable: false},
        {data: 'nama', name: 'nama', orderable: true, searchable: true},
        {data: 'status', name: 'status', orderable: true, searchable: false},
        {data: 'jabatan', name: 'jabatan', orderable: true, searchable: false},
        {data: 'lama', name: 'lama', orderable: true, searchable: false},
        {data: 'action', name: 'action', orderable: false, searchable: false},
    ],
      "language": {
        "lengthMenu": " _MENU_  Baris",
        "zeroRecords": "Data Tidak Tersedia",
        "info": "Halaman _PAGE_ Dari _PAGES_",
        "infoEmpty": "Data Tidak Tersedia",
        "infoFiltered": "(Hasil penyaringan dari _MAX_ total data)",
        "sSearch": "Pencarian ",
        "oPaginate": {
        "sNext" : "Selanjutnya",
        "sPrevious" : "Sebelumnya",
    },
    },
});