实际上你的问题在于这个包jenssegers/date。如您所见,Jenssegers\Date 扩展了 Carbon 并在第 104 行
public function diffForHumans(Carbon $since = null, $absolute = false, $short = false)
与 Carbon 有不同的实现
public function diffForHumans(Carbon $other = null, $absolute = false)
解决这个问题的方法是重新定义任一类的方法,不推荐这样做,因为它们都在 Vendor 文件夹中。所以我猜你的选择是要么在jassegers/date 上打开一个问题,要么尽量不使用那个包(如果你不经常使用它,请编写你自己的替代品)。
如果您的项目 Composer.json 中没有这个包,问题可能会更加困难,但是您使用的其他一些包有 jassegers/date 作为依赖项。您可以在每个项目依赖项的 Composer.json 中的供应商中检查这一点。在这种情况下,您可能会考虑使用与使用 jassegers/date 作为依赖项的包不同的包,至少在它更新之前是这样。
也许有人有更好的建议,这只是我的想法..
附:刚刚记住.. 如果您直接在 Composer.json 中使用它,您也可以 fork jassegers/date,并自行更改方法实现并使用该分叉版本,直到修复真正的版本。如果你间接使用它(你使用的一些其他包有这个作为依赖),那会有点复杂,这意味着你必须一直 fork 包,直到你到达jassegers/date。这将是相当乏味的工作,但应该可以暂时解决问题。