Как объединить два поста в один на Laravel5?

Я хочу опубликовать эту слитную дату и время (‘H: i’) следующим образом.

private function update($test, $request)
{
$test -> merge_date = $request -> date . " " . $request -> timestamp_hi;
$test->save();
}

значение даты указывается как «2016-08-30»,
значение timestamp_hi выглядит как ’12: 45′.

Я хочу объединить там значение и установить запись в БД, как «2016-08-30 12:45:00».

Но это приносит мне ошибку.

InvalidArgumentException in Carbon.php line 425:
Unexpected data found.
Data missing

at Carbon::createFromFormat('Y-m-d H:i:s', '12:45:00') in Model.php line 2969

Если я установлю значение timestamp_hi на 2016-08-30 12:45:00, Carbon create будет выглядеть следующим образом.

InvalidArgumentException in Carbon.php line 425:
The separation symbol could not be found
Unexpected data found.
Trailing data

at Carbon::createFromFormat('Y-m-d H:i:s', '2016-08-30 2016-08-30 12:45:00') in Model.php line 2969

Кажется, я могу объединить 2 сообщения, но не работать с меткой времени (‘H: i’). Зачем?

Постскриптум

Модель изменила это. Я не устанавливаю защищенные даты и атрибуты $ ранее.

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Test extends Model
{
protected $fillable = ['date', 'timestamp_hi'];
protected $dates = ['date', 'timestamp_hi'];

public function getDateAttribute($date)
{
return $this->attributes['date'] = \Carbon\Carbon::createFromFormat('Y-m-d', $date) -> toDateString();
}
public function getTimestampHiAttribute($timestamp_hi)
{
return $this->attributes['timestamp_hi'] = \Carbon\Carbon::createFromFormat('Y-m-d H:i:s', $timestamp_hi) -> format('H:i');
}
}

0

Решение

Посмотрите на ваше сообщение об ошибке.

Data missing

at Carbon::createFromFormat('Y-m-d H:i:s', '12:45:00') in Model.php line 2969

Вышесказанное говорит вам, что вы пытаетесь разобрать 12:45:00 в формат Y-m-d H:i:sВы пропустили дату для этого. Так должно быть Y-m-d H:i:s, 2016-08-30 12:45:00, Проверьте свои $request->date с помощью dd (). Действительно ли передается ценность?

Trailing data

at Carbon::createFromFormat('Y-m-d H:i:s', '2016-08-30 2016-08-30 12:45:00') in Model.php line 2969

2-я ошибка, как указано выше, говорит о том, что вы прошли дополнительную дату, обратите внимание на повторы 2016-08-30Я считаю, что передача правильного значения в соответствии с указанным форматом даты не даст вам ошибки, с которой вы столкнулись.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]