WINDOWS下用VSCODE除錯PHP7原始碼
在之前一段時間涉及PHP擴展開發,對PHP源代碼有調試需求,然而網上大部分都是在LINUX下調試的教程,WINDOWS系統下的非常少並且過程也只是粗略一講。所以決定自己嘗試在WINDOWS下建立調試環境,畢竟,原理是相通的:)。
1.準備
以下是我開發機上的配置,可以和我保持一致減少因為工具版本而出現額外問題的幾率。
1.Visual Code原始碼編輯偵錯工具 (建議學習:vscode入門教學課程
2.Visual Studio2017code入門教學課程##2.Visual Studio2017code ##(VS一般都把WIN下開發需要的東西都帶全了,畢竟宇宙全家桶.....)
紅色標註區域必須安裝
3.PHP7原始碼(也可以選擇從github上拉取)
可以任意選擇一個打包版本的原始碼
4.PHP7- SDK
我的開發機是64位,因為是編譯PHP7所以選擇了64位的deps-7.1-vc14-x64(擴充依賴函式庫包),建立php-sdk-binary-tools資料夾,將php-sdk-binary-tools-xxx.zip解壓縮至這個資料夾中,建立deps-vc14-x64資料夾,也將deps-7.1-vc14-x64.7z解壓縮至這個資料夾。
同時將php-sdk-binary-tools中的bin路徑加入WINDOWS系統變數PATH。 deps-7.1-vc14-x64本文暫時用不上,不過你也可以先下載下來,因為編譯自帶的一些擴展所依賴的庫和頭文件都包含在裡面,當你要編譯自帶擴展的時候可以用上:)。
2.編譯原始碼
#安裝VS後,執行在開始功能表裡的Visual Studio 2017資料夾下的x64 Native Tools Command Prompt for VS 2017
#運行後,進入PHP7原始碼目錄
##1.執行buildconf.bat產生WIN下的configure檔(configure.js)
3.使用VSCODE調試
調試方式可以分2種,一種是附加進程調試,一種是運行啟動調試,兩種方式都會介紹,先介紹運行啟動調試。 先建立一個用於測試的php的原始碼文件,我會建立在原始碼目錄下的x64/Debug_TS裡。最後將設定檔修改如下所示
我們之前編譯了PHP SAPI的cli,我們打開sapi/cli/php_cli.c源文件,定位到1197行的main函數內打上斷點。
接著我們到VS的DEBUG控制面板運行偵錯即可。
附加進程偵錯配置也是大同小異,我們點選選單選項偵錯->開啟配置,並選擇新增配置,在彈出來的選擇清單中選擇C/C (Windows) Attach
最後的設定檔如下:
我們先用PHP -S啟動一個內建伺服器(這個php一定要是你編譯產生的php.exe檔),來方便示範附加程式偵錯,我啟動的位置是在我們之前建立的test. php檔案所在的目錄下。
存取效果如下:
啟動偵錯的方式一樣,在VSCODE的偵錯面板裡面選擇(Windows) Attach運行即可。
然後在彈出來的進程清單中選擇PHP進程後開始進入偵錯狀態。
我們test.php中使用了array_push函數,我們這次到這個函數的實作中斷點,打開ext/standard/array.c,定位到2540行,打上斷點。
接著在瀏覽器中造訪http://127.0.0.1:8080/test.php 即可觸發斷點。
4.最後
本文的偵錯方式也可以作為擴充開發的偵錯方式,當然,同樣的設定思路也適用於宇宙IDE Visual Studio ,我在WINDOWS下配置VSCODE調試PHP源代碼的思路也適用於其它平台(Mac/Linux......)。如果你有興趣在Visual Studio中調試PHP原始碼,不如以本文為思路嘗試著自己思考動手來試試~
以上是WINDOWS下用VSCODE除錯PHP7原始碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

如何使用 Visual Studio Code 定義頭文件?創建頭文件並使用 .h 或 .hpp 後綴命名在頭文件中聲明符號(例如類、函數、變量)使用 #include 指令在源文件中包含頭文件編譯程序,頭文件將被包含並使聲明的符號可用

VS Code 系統要求:操作系統:Windows 10 及以上、macOS 10.12 及以上、Linux 發行版處理器:最低 1.6 GHz,推薦 2.0 GHz 及以上內存:最低 512 MB,推薦 4 GB 及以上存儲空間:最低 250 MB,推薦 1 GB 及以上其他要求:穩定網絡連接,Xorg/Wayland(Linux)

解決 Visual Studio Code 中中文註釋變為問號的方法:檢查文件編碼,確保為“UTF-8 without BOM”。更改字體為支持中文字符的字體,如“宋體”或“微軟雅黑”。重新安裝字體。啟用 Unicode 支持。升級 VSCode,重啟計算機,重新創建源文件。

vscode 內置終端是一個開發工具,允許在編輯器內運行命令和腳本,以簡化開發流程。如何使用 vscode 終端:通過快捷鍵 (Ctrl/Cmd ) 打開終端。輸入命令或運行腳本。使用熱鍵 (如 Ctrl L 清除終端)。更改工作目錄 (如 cd 命令)。高級功能包括調試模式、代碼片段自動補全和交互式命令歷史。

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

VS Code 終端常用命令包括:清除終端屏幕(clear)列出當前目錄文件(ls)更改當前工作目錄(cd)打印當前工作目錄路徑(pwd)創建新目錄(mkdir)刪除空目錄(rmdir)創建新文件(touch)刪除文件或目錄(rm)複製文件或目錄(cp)移動或重命名文件或目錄(mv)顯示文件內容(cat)查看文件內容並滾動(less)查看文件內容只能向下滾動(more)顯示文件前幾行(head)

Visual Studio Code (VSCode) 是一款跨平台、開源且免費的代碼編輯器,由微軟開發。它以輕量、可擴展性和對眾多編程語言的支持而著稱。要安裝 VSCode,請訪問官方網站下載並運行安裝程序。使用 VSCode 時,可以創建新項目、編輯代碼、調試代碼、導航項目、擴展 VSCode 和管理設置。 VSCode 適用於 Windows、macOS 和 Linux,支持多種編程語言,並通過 Marketplace 提供各種擴展。它的優勢包括輕量、可擴展性、廣泛的語言支持、豐富的功能和版

VS Code 終端命令無法使用的原因及解決辦法:未安裝必要的工具(Windows:WSL;macOS:Xcode 命令行工具)路徑配置錯誤(添加可執行文件到 PATH 環境變量中)權限問題(以管理員身份運行 VS Code)防火牆或代理限制(檢查設置,解除限制)終端設置不正確(啟用使用外部終端)VS Code 安裝損壞(重新安裝或更新)終端配置不兼容(嘗試不同的終端類型或命令)特定環境變量缺失(設置必要的環境變量)
