在 Linux + Laravel 环境下调试,常见、有效的几种方式如下,按“从入门到进阶”给你整理:
logger() / Loglogger('调试信息', ['user_id' => 1]);
或
\Log::info('测试', ['data' => $data]);
查看日志:
tail -f storage/logs/laravel.log
✅ 适合:线上、快速定位
dd() / dump()dd($user);
dump($request->all());
dd():die + dumpdump():只打印不中断✅ 适合:控制器、Blade
.env
APP_DEBUG=true
⚠️ 生产环境一定关掉
composer require laravel/telescope
php artisan telescope:install
php artisan migrate
访问:
/project/telescope
可以看到:
✅ 开发神器
DB::enableQueryLog();
// 你的查询
dd(DB::getQueryLog());
或监听:
DB::listen(function ($query) {
logger($query->sql, $query->bindings);
});
sudo apt install php-xdebug
配置 php.ini:
zend_extension=xdebug.so
xdebug.mode=debug
xdebug.start_with_request=yes
重启:
sudo service php-fpm restart
配合:
✅ 适合:复杂逻辑、看调用栈
php artisan tinker
User::first();
✅ 适合:模型、逻辑验证
storage/logs 没权限chmod -R 775 storage
php artisan config:clear
php artisan cache:clear
| 场景 | 推荐方式 |
|---|---|
| 快速看值 | dd / dump |
| 线上 | Log |
| SQL | QueryLog |
| 全栈调试 | Telescope |
| 深入代码 | Xdebug |
如果你愿意,可以告诉我:
我可以给你具体配置步骤。