如果变量为空,Carbon 获取当前日期
Carbon get current date if variable is null
在我的 blade 编辑表单中,我有这个:
<input type="text" name="birth" class="form-control" id="birth" value="{{ \Carbon\Carbon::parse($associado->birth)->format('d/m/Y') }}">
问题是:如果 $associado->birth
在数据库中为 NULL,Carbon 返回当前日期。
我该怎么做才能避免这种情况?
在使用 Carbon 解析之前检查 $associado->birth
是否为 NULL。
如果它有一个真值,它不是 NULL,您可以解析它 - 否则只需 return 在您的值中设置 null。
这是一个使用三元运算符的例子
value="{{ $associado->birth ? \Carbon\Carbon::parse($associado->birth)->format('d/m/Y') : null}}
再说一次,当使用这么多逻辑时,应该把它放在它自己的函数中。
您需要检查该值是否为 null
。
此外,您可以将 birth
添加到 eloquent 模型中的 $dates
数组 属性。
protected $dates = [
'dates'
];
这将告诉 eloquent 模型将此列转换为 Carbon
实例,就像它对 created_at
和 updated_at
所做的那样。如果列 if null
它将只是 return null。
您的代码将类似于:
{{ $associado->birth ? $associado->birth->format('d/m/Y') : null }}
希望对您有所帮助!
您可以使用 Carbon
中的 createFromFormat()
来完成。
value = "{{$associado->birth ? \Carbon\Carbon::createFromFormat('d\m\Y',
$associado->birth)->toDateString() : null}}"
这将检查存储在数据库中的日期字符串值,如果 Null
值则为空。
希望你明白。
在我的 blade 编辑表单中,我有这个:
<input type="text" name="birth" class="form-control" id="birth" value="{{ \Carbon\Carbon::parse($associado->birth)->format('d/m/Y') }}">
问题是:如果 $associado->birth
在数据库中为 NULL,Carbon 返回当前日期。
我该怎么做才能避免这种情况?
在使用 Carbon 解析之前检查 $associado->birth
是否为 NULL。
如果它有一个真值,它不是 NULL,您可以解析它 - 否则只需 return 在您的值中设置 null。
这是一个使用三元运算符的例子
value="{{ $associado->birth ? \Carbon\Carbon::parse($associado->birth)->format('d/m/Y') : null}}
再说一次,当使用这么多逻辑时,应该把它放在它自己的函数中。
您需要检查该值是否为 null
。
此外,您可以将 birth
添加到 eloquent 模型中的 $dates
数组 属性。
protected $dates = [
'dates'
];
这将告诉 eloquent 模型将此列转换为 Carbon
实例,就像它对 created_at
和 updated_at
所做的那样。如果列 if null
它将只是 return null。
您的代码将类似于:
{{ $associado->birth ? $associado->birth->format('d/m/Y') : null }}
希望对您有所帮助!
您可以使用 Carbon
中的 createFromFormat()
来完成。
value = "{{$associado->birth ? \Carbon\Carbon::createFromFormat('d\m\Y',
$associado->birth)->toDateString() : null}}"
这将检查存储在数据库中的日期字符串值,如果 Null
值则为空。
希望你明白。