php 的簡單易用的調式方法,列印方法

2021-09-09 02:14:46 字數 2845 閱讀 4682

簡單的除錯方法:echo, print_r, var_dump, exit, debug_backtrace(), debug_print_backtrace(), gettype(), get_class() 等等函式。

echo, print_r, var_dump:  列印變數(包括陣列和自定義的object)的值。

exit: 立即退出所有執行,但已經輸出的返回給瀏覽器,即會顯示。

有返回,而debug_print_backtrace()無返回:$data =debug_backtrace(); 也可以用如下**達到目的:

$e =new exception();

$error_string = $e->gettraceasstring();            

$error_string = print_r($e->gettrace(), true);            // 返回更詳細,如 區域性變數,行號等

echo ''; var_dump($error_string); echo ''; // 前後都新增 echo ''; 可以將回車鍵顯示出來

// 告訴瀏覽器中間的輸出為plain text),因為html中回車鍵沒作用。

gettype(), get_class():  乙個是獲取變數型別,乙個是獲取變數的class。 如 gettype($a), get_class($a)

示例:echo $a;       // 或者 print_r($a),  或者 var_dump($a),或者 echo gettype($a),    echo get_class($a)

exit;

$a輸出沒問題的話就在下乙個輸出加exit,雖然效率慢點,但很容易找出**錯了。

debug_backtrace(), debug_print_backtrace()也是直接插入到你要列印呼叫棧的地方。

debug_print_backtrace() 的輸出範例:

#0  c() called at [/tmp/include.php:10]

#1 b() called at [/tmp/include.php:6]

#2 a() called at [/tmp/include.php:17]

#3 include(/tmp/include.php) called at [/tmp/test.php:3]

名字體別說明

function

string

line

integer

file

string

class

string

object

object

type

string

當前呼叫的型別。如果是乙個方法,會返回 "->"。如果是乙個靜態方法,會返回 "::"。 如果是乙個函式呼叫,則返回空。

args

array

如果在乙個函式裡,這會列出函式的引數。 如果是在乙個被包含的檔案裡,會列出包含的檔名。

:

array(2) 

}[1]=>

array(4)

["function"] => string(12) "include_once"

}}

$arr=array(array('a'=>'aa','b'=>'bbb','c'=>'ccc'),

array('a'=>'ddd','b'=>'eee','c'=>'fff'),

array('a'=>'gg','b'=>'hh'));

print_r($arr);

//print_r輸出:

//array ( [0] => array ( [a] => aa [b] => bbb [c] => ccc )

[1] => array ( [a] => ddd [b] => eee [c] => fff )

[2] => array ( [a] => gg [b] => hh ) )

//var_dump輸出:

/* array (size=3)

0 =>

array (size=3)

'a' => string 'aa' (length=2)

'b' => string 'bbb' (length=3)

'c' => string 'ccc' (length=3)

1 =>

array (size=3)

'a' => string 'ddd' (length=3)

'b' => string 'eee' (length=3)

'c' => string 'fff' (length=3)

2 =>

array (size=2)

'a' => string 'gg' (length=2)

'b' => string 'hh' (length=2)

*/下面在給出乙個json格式的輸出:

$arr=array(array('a'=>'aa','b'=>'bbb','c'=>'ccc'),

array('a'=>'ddd','b'=>'eee','c'=>'fff'),

array('a'=>'gg','b'=>'hh'));

$arra=json_encode($arr);

print_r($arra);

//print_r輸出:

[,,]

var_export($arra);

//var_export輸出:

'[,,]'

var_dump($arra);

//var_dump輸出:

string '[,,]' (length=84)

Oracle簡單易用的表結構匯出方法

最近做專案時需要給客戶匯出資料庫表結構文件,庫中表名及列已有注釋,可是要輸出乙份表結構文件要借助第三方工具 如powerdesigner 那有沒有更簡單的方式呢?當然有,自己做豐衣足食!附 將輸出的文字存入x.htm,雙擊檢視就行,至於排版可以拷貝頁面到word中搞定 declare i integ...

php做簡單的登入,PHP實現簡易使用者登入系統

最近剛剛看到php連線資料庫的例項,於是做了乙個簡易的使用者系統 直接上 連線資料庫 connect.php servername localhost username formbd password formbd dbname form 建立連線 conn new mysqli servernam...

storm簡單易用的API

這是本人翻譯storm的一篇英文文章,英文位址是如有紕漏,歡迎指正 或請參照原文,純屬個人愛好。storm提供了簡單易用的api。當使用storm程式設計時,只需要操縱轉換tuple的流資訊,乙個tuple就是乙個值的列表。tuple可以包含任何資料型別,當使用自定義資料型別時,我們只需要簡單的使用...