我该如何使用Carbon格式?

问题描述

我有一个看起来像这样的DateTime 20200611151423

我尝试了Carbon::createFromFormat('Y-d-m H:i:s','20200611151423','Europe/Amsterdam');,但这给了我一个“找不到分隔符”的信息。有没有办法用Carbon格式化它?

解决方法

您的日期时间值必须与您作为createFromFormat函数的第一个参数传递的值的格式相同。请执行以下操作:

Carbon::createFromFormat('Y-d-m H:i:s','2020-06-11 15:14:23','Europe/Amsterdam')

或:

Carbon::createFromFormat('YdmHis','20200611151423','Europe/Amsterdam')
,

您应该先转换时间戳

class CreateMailTaskMailMessageTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('mail_task_mail_message',function (Blueprint $table) {
            $table->id();
            $table->unsignedInteger('type');
            $table->text('description');
            $table->decimal('value',16,2);
            $table->foreignId('mail_task_id')->constrained('mail_tasks')->onDelete('cascade');
            $table->foreignId('mail_message_id')->constrained('mail_messages')->onDelete('cascade');
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('mail_task_mail_message');
    }
}

或者您可以使用此方法:

public function forceDeleteMeo()
{
    return DB::transaction( function () {
        MailTask::query()->whereNotNull('deleted_at')->forceDelete();
        MailMessage::query()->whereNotNull('deleted_at')->forceDelete();
        Meo::query()->whereNotNull('deleted_at')->forceDelete();
    },3);
}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...