我的问题可能与该问题重复:
PHP Fatal error: Call to a member function format() on boolean
但是我确定我的问题不会重复。
我在尝试以日期时间格式保存记录时遇到问题。
错误如下:
Symfony \组件\调试\异常\
FatalThrowableError(E_ERROR)
在布尔值上调用成员函数format()
1°记录
分别在date_start和date_end列
court_id = 1-NAME =网球
2018-10-05 10:00:00
- 2018-10-05 11:00:00
完美运行。保存起来没有问题
然后我尝试在表中保存另一条记录。
分别为同一列。
2°记录
court_id = 1-NAME =网球
2018-10-05 12:00:00
- 2018-10-05 13:00:00
无效,但是如果日期不同,例如2018-10-06
,则有效。
日期相似,court_id相同,记录1和2之间的唯一区别是小时。
这是我的功能store()
public function store(Request $request){
$hours = new HoursNew();
try {
$hours->id = $request->id;
$date = DateTime::createFromFormat('Y-m-d\Th:i', $request->date_start);
$date2 = DateTime::createFromFormat('Y-m-d\Th:i', $request->date_end);
//THIS LINE SHOW ME AS AN ERROR
$hours->date_start = $date->format('Y-m-d H:i:s');
$hours->date_end = $date2->format('Y-m-d H:i:s');
$hours->estate_hour_id = $request->estate_hour_id;
$hours->court_id = $request->court_id;
$hours->save();
} catch (\Illuminate\Database\QueryException $e) {
Session::flash('error', 'Whoops! We have some problems');
return redirect()->route('ListHours.store');
}
Session::flash('message', "It's OK");
return redirect()->route('ListHours.store');
}
为什么当我尝试为相同的法院(court_id)保存相同的日期但保存小时数时出现此错误。
答案 0 :(得分:0)
http://php.net/manual/en/datetime.createfromformat.php
DateTime::createFromFormat()
在失败时返回false。由于在您的示例中小时从<= 12变为13,所以对我来说,“ h”应大写。
$date = DateTime::createFromFormat('Y-m-d\TH:i', $request->date_start);