Laravel 8安装Auth包登录后出现'A non well formed numeric value encountered'错误求助
解决Laravel 8登录后视图出现"A non well formed numeric value encountered"错误的步骤
1. 定位错误代码行
先在项目根目录的.env文件中开启调试模式,获取具体错误位置:
APP_DEBUG=true
开启后错误会显示具体的文件和行号,直接锁定触发问题的代码。
2. 检查视图中的数值运算
这个错误本质是非数值类型被强制用于数值运算,结合登录场景,重点排查:
- 视图中涉及用户字段(如
created_at、age、积分类字段)的运算,比如错误地将Carbon时间对象直接做加减:// 错误示例 {{ $user->created_at + 86400 }} // 正确写法 {{ $user->created_at->addDays(1) }} - 检查是否有字符串(如带非数字字符的
"100元")被用于intval()、+等数值操作。
3. 排查FrontController及Auth相关逻辑
- 查看FrontController中传递给视图的变量,确认是否存在类型错误(比如把字符串类型的ID当作数值传递)
- 检查Auth中间件或登录后的全局变量注入逻辑,是否有非数值变量被视图当作数值使用
4. 校验Auth包版本兼容性
Laravel 8对应laravel/ui的兼容版本为3.x,执行命令查看当前版本:
composer show laravel/ui
若版本不匹配,重新安装对应版本:
composer require laravel/ui:3.x
5. 清除项目缓存
执行以下命令清除所有缓存,避免旧缓存导致的异常:
php artisan cache:clear php artisan view:clear php artisan config:clear php artisan route:clear
内容的提问来源于stack exchange,提问作者Beast69
相关产品推荐
相关产品推荐

