所以我设法为 PHP 7 (7.0.4) 配置了 Xdebug (2.4.0)。但是我不能在我的 Laravel 项目中使用它。我正在尝试调试 CartController 中的一段代码。但是它说有一个错误,因为它找不到我的 CartController 扩展的 Controller 。这是我在 PhpStorm 控制台中得到的:
C:\xampp\php\php.exe -dxdebug.remote_enable=1 -dxdebug.remote_mode=req -dxdebug.remote_port=9000 -dxdebug.remote_host=127.0.0.1 C:\Users\Nikolay\Dropbox\store\app\Http\Controllers\CartController.php PHP Fatal error: Class 'App\Http\Controllers\Controller' not found in C:\Users\Nikolay\Dropbox\store\app\Http\Controllers\CartController.php on line 14 PHP Stack trace: PHP 1. {main}() C:\Users\Nikolay\Dropbox\store\app\Http\Controllers\CartController.php:0
Fatal error: Class 'App\Http\Controllers\Controller' not found in C:\Users\Nikolay\Dropbox\store\app\Http\Controllers\CartController.php on line 14
Call Stack: 2.1491 376944 1. {main}() C:\Users\Nikolay\Dropbox\store\app\Http\Controllers\CartController.php:0
Process finished with exit code 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() {...}
}
最佳答案
我可能弄错了……但听起来您似乎只是在尝试调试 Controller 而不通过 Bootstrap /路由等?
您的应用程序正在服务器上运行,因为所有的引导、实例化、依赖注入(inject)等都已完成。
要调试应用程序流程,您可以在 Controller 方法中使用断点调试 public/index.php
并手动设置/覆盖 $_SERVER['REQUEST_URI']
您要在 index.php 中调试之前的路由 ... 或者您安装 xdebug 浏览器扩展,在 PHPStorm 中启动调试监听器并在浏览器中访问您的路由。
关于php - Laravel 和 Xdebug - 由于 fatal error : Can't find Controller class that all controllers extend it,我无法调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37497637/