導航:首頁 > 編程語言 > php怎麼調試

php怎麼調試

發布時間:2023-05-18 19:05:39

phpstorm 怎麼斷點調試thinkphp

php--xdebug設置 ---phpstorm 斷點調試方法如下:
配置好了之後 可以使用 ide的斷點調試
Xdebug在PHP中的安裝配置涉及php.ini配置文件的修改。
1 、首先需要下載Xdebug,根據安裝的PHP版本,選擇合適的Xdebug版本,
2 、 安裝Xdebug
將下載的php_xdebug-2.1.0-5.3-vc6.dll復制到PHP安裝目錄下的ext目錄,ext目錄專門用來存放PHP擴展庫DLL文件。
3、 配置php.ini
安裝Xdebug的最後一步就是配置php.ini文件,打開C:\php目錄下的php.ini配置文件,在末尾添加
[xdebug]
zend_extension = "c:/wamp/bin/php/php5.4.3/ext/php_xdebug-2.2.3-5.4-vc9-nts-x86_64.dll"
xdebug.idekey=PhpStorm
xdebug.remote_enable = On
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
4 、重啟apache phpinfo()可以看到php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試 xdebug的那一塊
php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試
這一欄很長,要注意下面的表格中,xdebug.idekey 這一行內容
php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試
5 、然後再配置 phpstorm 里的
php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試
6 、新建一個調試
php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試
7 、設置一下 伺服器路徑和文件名
php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試
php--xdebug設置 <wbr>---phpstorm <wbr>斷點調試
然後可以隨意地打斷點,按那個小蟲子按鈕來調試程序了

Ⅱ php斷點調試的幾種方法

具體代碼如下:
<?php
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, '');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
echo $file_contents;
?>
PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。
它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標准通用標記語言下的一個應用)文檔中去執行,
執行效率比完全生成HTML標記的CGI要高許多;
PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。

Ⅲ thinkphp怎麼開啟調試模式

開啟debug調試模式,只需要主入口文件裡面定義一個常量。 define(『APP_DEBUG』,TRUE); //開啟調試模式 然後在配置文件config.php裡面定義一個參數開啟頁面trace顯示信息,如下 『SHOW_PAGE_TRACE』 =>true, //開啟頁面Trace 這樣就已經配置好了

Ⅳ phpstorm 中是怎樣調試PHP

## 配置到php
1. 打開php.ini文件
```bash
cd /private/etc/
#默認沒有php.ini,需要拷貝一下晌滾罩
sudo cp php.ini.default php.ini
sudo vi php.ini
```
2. 在下面加入
```bash
[Xdebug]
zend_extension="/usr/local/php_user/xdebug.so"
xdebug.remote_enable = on
;xdebug.remote_handler=dbgp
xdebug.remote_host="127.0.0.1"
xdebug.remote_port=9000
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.remote_autostart = on
```
3. 重啟`apache`
```bash
sudo apachectl restart
```
4. 查看phpinfo()信息裡面搜索一下`debug`如果有,你成功了備陸。
## 配置phpstorm
1. 打開phpstorm,進入頂部導航`phpstrom->perferences..`
2. 點擊`php`項,點擊`interpreter`後面的`...`按鈕
3. 點擊`php home`後面的刷新(`...`後面)按鈕
4. 這時候你將看到`Debugger: Not installed`變成`Xdebug 2.3.2`(版本號可能不同)
6. 進入`php`欄目下的`Server`,點擊`+`新建一個server:host填寫你本地的host(如127.0.0.1),點擊`apply`保宴鬧存,並退出`perferences`對話框。
7. 點擊頂部導航`run`->點擊`+`->選擇`PHP Web Application`->選擇上一步新建的`server`,`start URL`填入,你要debug的php文件地址,下面會生成一個地址,這個地址在瀏覽器應該能正常瀏覽測試的;點擊`apply`進行保存。

## 開始愉快的使用
1. 在你要debug的文件行數字右側一列,點擊一下就會有一個斷點。
2. 點擊頂部導航`run`->debug,選擇你剛剛新建的`debug`名稱,這時候會彈出瀏覽器載入這個php文件了。

Ⅳ phpstorm 中是怎樣調試PHP

先安裝xdebug,然後再php.ini中配置逗灶
phpstrom右上角爬蟲旁邊有個下拉按鈕,選擇第一個,點擊按鈕後會彈出一個窗,點擊窗口山腔扮左上角+號按鈕,然後選擇圓磨PHP Web Application,填上你的啟動名稱,選擇服務,填寫啟動路徑,選擇啟動瀏覽器,保存之後點擊爬蟲按鈕即可

Ⅵ php程序調試方法總結

相信很多朋友們都有調試程序的經歷 然而很多時候調試程序是痛苦而又漫長的過程;它不僅需要細心 更需要耐心 切忌心浮氣躁 但是當找出問題並順利解決它時 又會給人無比激動的喜悅 這里總結一下筆者在程序調試中的使用的原則 工具 以及方法 這里需要說明的是 某些原則性的東西 各種語言都是差不多的 而涉及到具體的工具和某些具體的調試方法 這里只涉及web開發方面的內容

總體原則

找出問題原因

程序需要調試 是因為程序有問題 而調試的第一目標是找到原因 常見調試方法 排除法: 當我們面對整個復雜的系統時 常常完全不知道問題出在什麼地方;這個時候可以先將與問題不相關的地方排排除 逐漸縮小調試范圍 獨立模塊法: 大部分程序都有模塊結構 將可疑模塊單獨拿出來 模擬輸入相應的操作數據 看是否出現問題 比較法 如果程序或系統是基於某個平台時 可以先看看其他基於本平台的程序或系統 找出是平台問題還是本程序問題 很多時候這種方法是用來排除不成熟平台上的隱藏問題 對比法 對於自己實現的程序 可能已經有相應的開源的模塊 可以把這些程序源碼找出來 和自己的程序進行對比 這樣不僅節省時間 還能借鑒別人的優秀之處

問題定位

問題原因的多種多樣 可能這個時候你只能知道是什麼樣的問題 可能與什麼相關 這個時候就需將出現的代碼段找出來 而需要做到這一步 一般開發環境為我們提供很多實用工具 藉助這些工具 可以一步一步地查看程序的輸入和輸出 根據每一步的輸入輸出 定位問題

有一部分很厲害的人 可以通過閱讀代碼 找到出現問題的地方 但是很多問題都是調試者自己因為疏忽造成的 而要通過這樣方式去查找問題 幾乎是不可能的 因為已經形成固定的思維定勢

解決問題

找到問題的原因和相應代碼行 解決它很多時候是一件比較簡單的事 因為這些問題往往自己疏忽或者自己考慮不周 但是某些時候並不總是這樣的 而是由於外部環境造成的 比如你的網站訪問的人數增多 你當初沒有考慮到這些數據壓力 同時也沒有考慮到高度並發性的問題 這個時候問題解決起來是你覺得比較棘手 而要解決這樣的問題 不僅僅要專注程序 更要從系統架構方面著手 綜合各方面的知識 進行全面的考慮

web開發常用調試工具

俗話說 工欲善其石 必先利其器 對於程序的調試 也必須藉助外部工具 這里介紹幾種在開發web程序中常常用到的工具

xdebug xhprof php性能調試工具 他們都是php的一種擴展 可以很方便的安裝和配置 這兩個工具主要是將你程序的內部運行狀況 調用函數以一種簡潔的方式告訴你 讓你對程序在什麼地方佔用過多的資源 那些地方需要進行優化一目瞭然 順便提一下 xdebug生成的profile文件一般藉助winCacheGrid查看

firephp firbug 前者主要是php的調試工具 而後者是web開發必不可少的工具 它不僅能查看請求 還能調試js css

在ie下面可以使用HttpWatch 如果需要將數據做深入分析 可以使用抓包工具

php中常使用的調試函數 error_report var_mp print_r var_export

mysql apache/nginx的常用的調試技巧 分析他們日誌文件也是相當重要 在linux下查看日誌文件的常用命令 cat more less grep awk sed

常見的調試技巧和方法

下面以我調試的程序來介紹一下具體的調試方法和技巧

例子 這是一個php開發的游戲引擎 主要功能提供雙發球員移動位置 狀態 傳球 技能等功能控制 整個程序通過xml文件保存結果 突然某天 有兩個用戶進行比賽 返回的xml不符合正常的結構 從返回的結果來看 球員的移動位置有些不正常 其中少了某些步驟 於是決定從游戲的AI入手查找 但是也沒有發現此處有什麼異常 最後將輸入的球員數據列印出來 然後將中間產生的數據也列印出來 結合程序的處理邏輯 發現是這兩個用戶有同一個球員 因此導致在處理的時候 兩個人的球員出現混亂 找到原因後 就將這個以球員標識改為以球隊和球員共同決定即可

例子 程序剛上線 有些熱心的朋友們喜歡對程序進行一些壓力測試 某次突然 w的請求很大的一個靜態資源 直接導致硬碟癱瘓 對於這種情況 必須查看訪問日誌 才知道發生什麼事 否則人家對你攻擊了 你還找不到原因 當然對於這樣的攻擊 直接把靜態資源放到cdn上 另外 隨著訪問用戶量的增大 系統的壓力增大 反應逐漸變慢 我們不得不考慮 以前只需要 幾毫秒能處理的程序 現在需要 幾秒 這個時候程序的並發性設計就很重要了 否則會造成數據異常的情況

例子 使用外部軟體出現異常 例如使用memcached的時候 如果某台沒有啟動或者不能使用了 這個時候nginx一般就會對某些使用memcache的請求返回 是不是感覺有點無厘頭 可以考慮改寫memcahce 的php擴展了

lishixin/Article/program/PHP/201311/21278

Ⅶ thinkphp 頁面載入時間長怎麼調試

1、在項目配置文件裡面打開調試模式DEBUG_MODE,這樣能夠讓你發現大部分的錯誤原因 。可能影響驗證碼的輸出。

2、如果不想使用調試模式,可以單獨開啟頁面Trace顯示。發現很多人不想使用調試模式的原因居然是因為有頁面Trace信息的輸出,其實這裡面有一個誤區,以為調試模式就一定會有頁面Trace,但其實調試模式和頁面Trace沒有必然的關系,只是因為打開調試模式後,系統默認的調試配置文件會開啟頁面Trace顯示,所以你完全可以給項目單獨定義調試配置文件。

3、使用系統定義的mp函數,該方法同var_mp可以輸出任何類型的變數信息,而且更加有利於在瀏覽器裡面查看,例如:
$User=D("User");
$list=$User->findAll();
mp($list);
復制代碼
4、頁面Trace信息只能顯示當前頁面執行的sql語句,但無法查看ajax方式執行的後台操作裡面的sql語句,所以你還可以開啟sql日誌記錄SQL_DEBUG_LOG來記錄每一條執行的sql語句,並且可以查看到每條sql語句的執行時間 sql日誌文件位於Logs目錄下面,會自動按日期來虛蔽區分每天的sql日誌。

5、另外一個是在執行某個數據操作後懷疑sql執行有錯誤的話,可以使用模型類的getLastSql方法來查看上次執行的sql語句,以便分析具體的錯誤原因。例如:
$User=D("User");
$User->id=3;
$User->name='ThinkPHp';
$User->save();
echo $User->getLastSql();
//輸出結果將為:update think_user set name='ThinkPHP' where id=3;
復制代碼
6、當需要調試某段裂碼代碼的運行時間的時候,可以使用系統提供的debug_start($label)和debug_end($label)方法,例如:
debug_start('demo');
/肆譽哪/這里是你的代碼段.......debug_end('demo');

Ⅷ phpstorm 中是怎樣調試PHP

phpstorm 中調試PHP的方法步驟:

一、PHP安裝xdebug擴磨知展

我使用Laravel Homestead作為開發環境默認已經安裝,如果瞎笑消沒有安裝自行安裝下,再繼續。

remote_handler 、remote_host、remote_port 這些都有默認值,但還是建議設置下,至少知道要設置這些參數~

二、PhpStorm設置升槐

  1. 檢查phpstorm的xdebug配置。這里的debug port要和php.ini裡面的xdebug.remote_port相一致!默認是9000,如果9000埠被佔用的話,可以改成其他埠。

  2. 設置debug.

    添加server~

    swoole.app是我本地的 webserver~ ~

  3. 開始調試

    打好第一個斷點,shift + F9就可以了

    打好第一個斷點,選中配置的debug, 按旁邊的臭蟲 按鈕

Ⅸ php 代碼如何調試

開啟Apache伺服器以及MY_SQL資料庫。

在PHP集成環境的安裝目錄「www」文件夾中創建我們需要用到的php文件,1.php.

用Notepad++打開1.php文件,然後輸入PHP的語言格式:
<?php ?>

輸入標準的輸出語言:
<?php
echo "Hello world !" //輸出Hello world 語言。 echo 是列印的意思
?>

在網頁上輸入localhost:8080/1.php可以調試我們自己寫的php代碼

PHP的簡單運算,用$來定義應用數據,輸出也是一樣。
<?php
$sum=1;
$total=1.22;
$sum=$total+$sum;
echo $sum ?>

Ⅹ php 源碼怎麼本地調試

PHP本地測試,解決你的問題主要有2種思路:


1、Windows系統下實現。

(1)去網上搜索wamp集成環境包,下載後安裝在電腦里。這個集成軟體包括了php5, apache伺服器,mysql資料庫,是windows系統下使用的。

(2)如果你不想用,也可以下載以上3個軟體,然後進行自行安裝。這種情況下,可以使用windows的IIS伺服器,或apache伺服器,教程網上有,你可以自己找下。


2、Linux系統下進行測試。

那麼你需要自已在電腦原有windows系統下安裝Linux系統,Linux可以與windows並存,也可以在虛擬機里安裝。然後,在Linux下安裝php5,apache伺服器,ok後就可以進行本地開發和測試了。


記得給分!!!

閱讀全文

與php怎麼調試相關的資料

熱點內容
我的世界如何編程 瀏覽:84
vue反編譯代碼有問題 瀏覽:948
linuxshell字元串連接字元串 瀏覽:51
androidviewpager刷新 瀏覽:438
python編程計算平均分 瀏覽:678
加密數字貨幣市值查詢 瀏覽:692
時尚商圈app怎麼樣 瀏覽:584
stacklesspython教程 瀏覽:138
用命令行禁用135埠 瀏覽:212
linux防火牆編程 瀏覽:627
pdf閱讀器刪除 瀏覽:979
考研人如何緩解壓力 瀏覽:822
買電暖壺哪個app便宜 瀏覽:505
洛克王國忘記伺服器了怎麼辦 瀏覽:782
為什麼cf登錄伺服器沒反應 瀏覽:695
伺服器如何獲取文件列表 瀏覽:672
creo五軸編程光碟 瀏覽:14
蘋果app網路驗證在哪裡 瀏覽:14
博科清空命令 瀏覽:384
簡愛英文pdf 瀏覽:376