所以我设法为PHP 7(7.0.4)配置了Xdebug(2.4.0)。但是我不能在我的Laravel项目中使用它。我试图调试我的CartController中的一个代码块。但是它说有一个错误,因为它找不到我的CartController扩展的Controller。这是我在PhpStorm控制台中得到的结果:
PHP系统发生严重错误:在C:\Users\Nikolay\Dropbox\store\app\Http\Controllers\CartController.php的第14行没有找到类'App\Http\Controllers\Controller' PHP 1. {main}()C:\用户\尼古拉\Dropbox\商店\应用\Http\控制器\购物车控制器.php:0
致命错误:在第14行的C:\用户\Nikolay\Dropbox\商店\应用程序\Http\控制器\CartController.php中找不到类“应用程序\Http\控制器\控制器”
调用堆栈:2.1491 376944 1. {main}()C:\用户\尼古拉\Dropbox\商店\应用程序\Http\控制器\购物车控制器.php:0
进程结束,退出代码为255
当我在服务器上运行应用程序时,应用程序本身没有问题。我如何修复这个问题?为什么会出现这个问题?
编辑- 28/05/2016 -以下是CartController:
<?php
namespace App\Http\Controllers;
use App\Cart;
use App\CartItem;
use App\Product;
use Illuminate\Http\Request;
use App\Http\Requests;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Session;
class CartController extends Controller
{
public function showCart() {...}
public function addItem(Request $request, $product_id) {...}
public function deleteItem($product_id, $size) {...}
public function showCheckout() {...}
private function calculateTotalPrice() {...}
}
3条答案
按热度按时间xj3cbfub1#
我可能搞错了......但听起来您似乎只是在尝试调试控制器,而不进行自举/路由等操作?
您的应用程序在服务器上工作,因为所有的引导、示例化、依赖注入等都已完成。
要调试应用程序流,您可以在控制器方法中使用断点调试
public/index.php
,然后在...之前在index.php中使用要调试的路由手动设置/覆盖$_SERVER['REQUEST_URI']
,或者安装xdebug浏览器扩展,在PHPSorm中启动调试侦听器,然后在浏览器中访问您的路由。z9gpfhce2#
在Laravel项目的根目录中,我创建了一个.vscode文件夹,在这个新文件夹中,我创建了一个launch.json文件,包含以下内容:
kyks70gy3#
我在使用任何IDE编辑器(使用netbeans或VS代码)时都遇到了同样的问题。问题是我从主index.php(自动加载器文件)以外的文件开始调试。当我从index.php文件开始调试时,一切都开始工作了。无论如何,我都会逐步解释如何纠正
1.找到正确的php.ini文件。在/var/www/html/中创建一个info.php文件并写入
然后在浏览器中浏览此文件并找到php.ini。同时从此处找到您的系统所具有的xdebug版本。
1.首先配置xdebug(在这个php.ini文件中)。有两个主要的xdebug版本(截至编写本书时)。a. XDebug 2 b. XDebug 3
在这个php.ini文件的最后创建一个xdebug部分。
远程xdebug.so=远程处理程序=dbgp xdebug.远程主机=本地主机xdebug.远程端口=9000
将路径更改为xdebug。使用以下命令查找xdebug
如果你安装了多个版本的php,你会得到不止一个xdebug。要知道你将使用哪一个,然后只是删除和安装xdebug,以及在哪个文件夹中,它消失和重新出现,你需要的xdebug。例如,要知道php7.4正在使用什么版本,删除php7.4-xdebug模块,然后安装它;使用
然后使用
而Xdebug 3则具有这些设置
某些设置在两个版本中是相同的
将xdebug.idekey更改为vsc(对于VS代码)或phpstorm(对于IDE代码)等
1.启动您的ide并打开您的laravel项目。例如,在VScode中打开文件夹并选择您的项目文件夹
1.打开你的主index.php文件在公共文件夹
并开始调试