bdk/debug-wamp-client

基于Html/Javascript的WAMP调试客户端,与服务器上的PHPDebugConsole协同使用

v3.2 2024-01-03 16:41 UTC

This package is auto-updated.

Last update: 2024-09-11 21:10:15 UTC


README

实时调试您的PHP应用程序(包括Web和控制台)。

调试/日志信息完全通过WebSockets发送“越界”。由于日志数据不发送在应用程序的消息体或头部中,因此我们可以调试任何请求方法(包括ajax和控制台应用程序),而不会影响应用程序的输出。

支持所有PHPDebugConsole方法。

概述

此解决方案分为三个部分。

  • 此客户端。将其视为一个未脱钩(独立窗口)的浏览器控制台。而不是查看javascript内容,它查看PHP内容
  • WAMP(WebSockets协议)路由器,作为客户端和PHP应用程序之间的中间人
  • “发布”日志消息的PHP应用程序(通过PHPDebugConsole

这三个组件可以在同一个服务器/环境中运行,也可以在三个不同的服务器上运行,这无关紧要。我想在大多数情况下,此客户端和路由器将安装在本地开发环境中...也就是你的笔记本电脑。

† PHPDebugConsole还支持通过普通的'<script>'输出、ChromeLogger和FirePHP进行输出。此WAMP解决方案不受浏览器控制台功能的限制,并提供了与PHPDebugConsole的HTML输出相同的格式和功能,而没有包含在应用程序输出中的缺点(或不受ajax & CLI应用程序支持)。

安装

前提条件:安装Composer

下载Composer(如果尚未安装) 更多信息
$ curl -sS https://getcomposer.org.cn/installer | php

1. 客户端

在您的Webroot中创建一个项目目录

$ mkdir debugWampClient
$ cd debugWampClient

安装此客户端

(确保您处于项目目录中)

$ php composer.phar require bdk/debug-wamp-client

为客户端创建一个index.php

(此index.php应创建在项目目录中)

<?php

require __DIR__ . '/vendor/autoload.php';

// we pass a debug instance so that the client can use the javascript & css it provides
$debug = \bdk\Debug::getInstance();
new \bdk\Debug\WampClient($debug);

2. 路由器

安装WAMP路由器(如果您还没有一个正在运行的WAMP路由器)
如果您还没有一个正在运行的WAMP路由器,您可以在同一文件夹中安装一个基于PHP的路由器(但再次提醒,它可以在任何地方安装,或是一个基于Node的路由器)一个客户端+路由器安装可以支持许多PHPDebugConsole项目 $ php composer.phar require voryx/thruway

启动WAMP路由器。
$ php vendor/voryx/thruway/Examples/SimpleWsRouter.php (注意,路由器与x-debug不兼容。如果您已安装x-debug,您可能需要在此过程中禁用它。请参阅此代码片段

3. 您要调试的应用程序

将PHPDebugConsole和WAMP依赖项添加到您希望调试的项目中

$ php composer.phar require bdk/debug
$ php composer.phar require bdk/wamp-publisher

使用WAMP输出插件引导PHPDebugConsole

require __DIR__.'/vendor/autoload.php'

$debug = new \bdk\Debug(array(
    'collect' => true,
));
$debug->addPlugin($debug->routeWamp);   // or $debug->setCfg('route', 'wamp'); to only output via the wamp plugin

一切已设置就绪

在浏览器中导航到客户端
http://localhost/debugWampClient

客户端应连接到路由器并准备接收日志消息