Laravel 使用时间列类型分配工作班次

我正在尝试创建一个员工轮班管理页面。班次应按一天中的小时数分配。

像这样的东西:

http://img2.mukewang.com/63539e0c0001ce4315120085.jpg

以下是我的表格设置:


class CreateShiftsTable extends Migration

{

    public function up()

    {

        Schema::create('shifts', function (Blueprint $table) {

            $table->increments('id');

            $table->string('shift_name');

            $table->integer('type');


            $table->time('full_day_start_work_time')->nullable();

            $table->time('full_day_end_work_time')->nullable();


            $table->time('morning_half_start_work_time')->nullable();

            $table->time('morning_half_end_work_time')->nullable();


            $table->time('afternoon_half_start_work_time')->nullable();

            $table->time('afternoon_half_end_work_time')->nullable();

        });

    }

}

如何使用时间列类型将其转换为控制器中的 24 小时格式并在 HTML 表中显示,还是我使用了错误的列类型来执行此操作?非常感谢任何帮助


蓝山帝景
浏览 99回答 1
1回答

红颜莎娜

MySQL 使用 24 小时格式将数据保存在时间类型的列中。所以从数据库中获取它是没有问题的。然后您可以将其格式化为Carbon以正确的格式显示:\Carbon\Carbon::parse('09:00:23')->format('H:i')=> "09:00"                                                                                                                                                                         \Carbon\Carbon::parse('09:01:22')->format('H:i')                                                                                                                               => "09:01"                                                                                                                                                                         \Carbon\Carbon::parse('17:01:78')->format('H:i')                                                                                                                               => "17:01"     
打开App,查看更多内容
随时随地看视频慕课网APP