成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Swoole中怎么使用Xdebug實(shí)現(xiàn)單步調(diào)試

本篇文章給大家分享的是有關(guān)Swoole 中怎么使用 Xdebug實(shí)現(xiàn)單步調(diào)試,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

創(chuàng)新互聯(lián)成立于2013年,先為商城等服務(wù)建站,商城等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為商城企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

先說一下如何安裝 Sdebug

為了避免 Swoole 的檢測 Xdebug 警告,所以擴(kuò)展注冊的名稱是 Sdebug

git clone git@github.com:swoole/sdebug.git -b sdebug_2_9 --depth=1

cd sdebug

phpize
./configure
make clean
make
make install

步驟很簡單,就是 clone 源碼,進(jìn)入目錄然后編譯

如果你的 PHP 是通用安裝,沒有修改默認(rèn)位置等等,也可以直接運(yùn)行目錄下的腳本:

./rebuild.sh

如果你的 phpize 不是默認(rèn)路徑的話,請使用絕對路徑;同樣的 php-config 需要使用--with-php-config=加上你的絕對路徑

編譯成功后需要在 php.ini 加載擴(kuò)展

zend_extension=xdebug.so

編譯完成后生成的 so 文件名還是 xdebug

查看是否加載成功

php --ri sdebug

別走,還沒完,還需要一些其他的配置,不然你去斷點(diǎn)會(huì)發(fā)現(xiàn)不起作用

我們還需要在 php.ini 中加入這幾個(gè)配置項(xiàng)

xdebug.remote_enable=1
xdebug.remote_autostart=1
xdebug.remote_host=localhost
xdebug.remote_port=8000
xdebug.idekey="xdebug"

一個(gè)配置難倒英雄漢,很多人在使用 Sdebug 的時(shí)候就會(huì)遇到需要這樣問題,不起作用,就吐槽不好用,實(shí)際上是你的姿勢不對,配置項(xiàng)沒加或者加錯(cuò)了

需要配合 PhpStorm 的話,還需要設(shè)置一下 PhpStorm 的配置

Preferences | Languages & Frameworks | PHP | Debug

Swoole 中怎么使用 Xdebug實(shí)現(xiàn)單步調(diào)試

1 是為了我們不加斷點(diǎn)的時(shí)候,自動(dòng)給第一行斷點(diǎn)

2 是修改配置的remote_port端口

Preferences | Languages & Frameworks | PHP | Servers

添加一個(gè)服務(wù)

Swoole 中怎么使用 Xdebug實(shí)現(xiàn)單步調(diào)試

緊接著在右上角這里添加一個(gè)調(diào)試,選擇 PHP Remote Debug

Swoole 中怎么使用 Xdebug實(shí)現(xiàn)單步調(diào)試

server 選擇我們剛才創(chuàng)建的 server,IDE key 就填我們 php.ini 中配置的xdebug

然后我們來試驗(yàn)一波,看看好不好使

先來一個(gè)簡單的 TCP Server

//創(chuàng)建Server對象,監(jiān)聽 127.0.0.1:9501 端口$server = new Swoole\Server('127.0.0.1', 9501);//監(jiān)聽連接進(jìn)入事件$server->on('Connect', function ($server, $fd) {
    echo "Client: Connect.\n";
});//監(jiān)聽數(shù)據(jù)接收事件$server->on('Receive', function ($server, $fd, $from_id, $data) {
    var_dump($data);
    $server->send($fd, "Server: " . $data);
});//監(jiān)聽連接關(guān)閉事件$server->on('Close', function ($server, $fd) {
    echo "Client: Close.\n";
});//啟動(dòng)服務(wù)器$server->start();

點(diǎn)擊右上角的綠色蟲子進(jìn)入 Debug 狀態(tài),啟動(dòng)我們的服務(wù),會(huì)發(fā)現(xiàn)自動(dòng)斷在了第 4 行創(chuàng)建 Server 對象的地方

Swoole 中怎么使用 Xdebug實(shí)現(xiàn)單步調(diào)試

然后下一步下一步...

start 之后我們使用 telnet 進(jìn)行連接,發(fā)送一個(gè)消息,斷點(diǎn)就進(jìn)入到 Connect 這里,然后我們再下一步,終端才會(huì)輸出Connect

緊接著我們會(huì)到 var_dump 的地方,就可以看到$data 的值是11111\r\n

Swoole 中怎么使用 Xdebug實(shí)現(xiàn)單步調(diào)試

然后來一個(gè) HTTP Server

$http = new Swoole\Http\Server('0.0.0.0', 9501);

$http->on('request', function ($request, $response) {
    var_dump($request->server);
    $response->header("Content-Type", "text/html; charset=utf-8");
    $response->end("<h2>Hello Swoole. #".rand(1000, 9999)."</h2>");
});

$http->start();

這里需要在訪問時(shí)加上一個(gè)XDEBUG_SESSION_START參數(shù)或者在 Cookie 中添加也可以

瀏覽器訪問http://127.0.0.1:9501/?XDEBUG_SESSION_START=xdebug

也是可以斷點(diǎn)調(diào)試的

Swoole 中怎么使用 Xdebug實(shí)現(xiàn)單步調(diào)試

框架的使用也是同理的,至于其他的什么和 docker 一起使用等等自己研究吧...

這里放一張調(diào)試 Hyperf 的截圖

Swoole 中怎么使用 Xdebug實(shí)現(xiàn)單步調(diào)試

還有一個(gè) Tips,把右上角的電話圖標(biāo)選擇為上圖那樣,會(huì)在命令行啟動(dòng)服務(wù)時(shí)自動(dòng)調(diào)起 Debug 服務(wù)。

以上就是Swoole 中怎么使用 Xdebug實(shí)現(xiàn)單步調(diào)試,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

本文標(biāo)題:Swoole中怎么使用Xdebug實(shí)現(xiàn)單步調(diào)試
新聞來源:http://jinyejixie.com/article38/pgejpp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、外貿(mào)建站微信公眾號、企業(yè)建站、做網(wǎng)站、響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
海城市| 雷波县| 吉木乃县| 金门县| 忻州市| 黎川县| 安西县| 灵丘县| 乐平市| 慈利县| 毕节市| 高阳县| 承德市| 固安县| 蒲江县| 孟津县| 枣强县| 泾源县| 蓬溪县| 静安区| 和平区| 通许县| 冀州市| 福鼎市| 维西| 泰安市| 清徐县| 渝北区| 兴和县| 马山县| 璧山县| 新竹市| 苏尼特右旗| 星子县| 奉化市| 巩义市| 尉氏县| 罗田县| 重庆市| 广元市| 墨竹工卡县|