## PHP打印測試,PHP調試技巧
### 第一步:
> 在 php.ini 中,將 display_errors 設置為 On;
### 第二步:
> 在 框架的 開始處,添加如下代碼:
~~~
<?php
if (isset($_GET['debug'])) {
// ini_set('display_errors', true);
//【注意】本來不想到 php.ini 中修改 display_errors 值,但是 在 PHP 代碼中設置 display_errors 值不起作用,悲劇!
error_reporting(E_ALL);
set_time_limit(0);
} else {
error_reporting(E_ERROR);
}
~~~
> 以前習慣用 echo,print_r 等方法來測試PHP輸出,這樣多多少少會影響到代碼的正常運行,現改成“把測試變量輸出到文本”的形式,可實現日志形式的調試,代碼如下:
~~~
<?php
/**
* 寫文件
*
* @param string $filename 文件名
* @param string $text 要寫入的文本字符串
* @param string $openmod 文本寫入模式('w':覆蓋重寫,'a':文本追加)
* @return bool
*/
function file_write($filename = '', $text = '', $openmod = 'w') {
if (@$fp = fopen($filename, $openmod)) { flock($fp, 2);
fwrite($fp, $text);
fclose($fp);
return true;
} else {
return false;
}
}
/**
* 寫對象(包括 數字、字符串、數組)
* 【注意:臨時調試用而已!】
*
* @param string $text 要寫入的文本字符串
* @param string $type 文本寫入類型('w':覆蓋重寫,'a':文本追加)
* @param bool $isVarExport 是否變量導出
* @return bool
*/
function write2($text = '', $type = 'a', $isVarExport = false) {
$filename = __DIR__ . '/write2.txt';
$text = (is_array($text) && $isVarExport) ? var_export($text, true) : print_r($text, true);
$text = "++++++++++++++++++++++++++++++++++++++++++\r\n"
. date('Y-m-d H:i:s') . "\r\n"
. $text . "\r\n";
return file_write($filename, $text, $type);
}
~~~
今后,直接用write2('xxx');函數即可。
另外,也可用“file_put_contents”去寫文本
~~~
<?php
$data222 = $arr;
$text222 = print_r($data222, true);
$filename222 = 'd:\My Documents\1\write.txt';
file_put_contents($filename222, $text222);
~~~
- 常用函數
- 簡單的php生成靜態html代碼
- PHP寫文件函數
- PHP生成GUID的函數
- PHP常用正則表達式匯總
- php字符串壓縮
- PHP無限分組
- PHP簡單 對象(object) 與 數組(array) 的轉換
- PHP數組常用函數
- PHP調式測試函數
- PHP常用字符串的操作函數
- mysql 常用內置函數
- PHP通用請求函數CURL封裝
- 裁剪圖片PHP代碼
- PDO操作MYSQL封裝類
- 10個實用的PHP代碼片段
- 獲取訪問者IP地址
- PHP實現發紅包程序
- PHP把文本轉換成圖片
- curl重寫php file_get_contents
- PHP生成一個隨機字符串
- PHP讀文件和寫文件
- PHP根據key 給二維數組分組
- php中curl模擬post提交多維數組
- 33個超級有用必須要收藏的PHP代碼樣例
- PHP防XSS 防SQL注入的代碼
- php常用數組array函數實例總結
- 用PHP遍歷目錄下的全部文件
- GBK2UTF8