如何在Laravel Blade中使用Carbon循环获取未来10天日期并修复报错
错误原因
- 初始化
$today变量时直接调用了format()方法,该方法会将Carbon日期对象转换为字符串类型,字符串无法调用Carbon的addDay()成员方法,对应你收到的报错提示「Call to a member function addDay() on string」。
修复方案
调整逻辑,先保留Carbon实例做日期运算,仅在需要输出展示、给option赋值的时候再做格式转换即可,推荐使用Blade原生语法编写,代码更简洁规范:
<select class="form-control"> @php $currentDate = \Carbon\Carbon::now(); @endphp @for ($i = 0; $i < 10; $i++) @php $formattedDate = $currentDate->format('m-d-Y (l)'); @endphp <option value="{{ $formattedDate }}"> {{ $formattedDate }} </option> @php $currentDate->addDay(); @endphp @endfor </select>
内容的提问来源于stack exchange,提问作者Anil Parshi
相关产品推荐
相关产品推荐

