差異處
這裏顯示兩個版本的差異處。
兩邊的前次修訂版 前次修改 | |||
tech:check_null [2009/04/10 18:49] – jonathan | tech:check_null [2009/09/16 00:46] (目前版本) – jonathan | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== Perl / PHP 檢測變數有否定義方式 ====== | ||
+ | 最近也開始回來 Coding Perl / PHP.. 所以對於未定義變數的警告訊息也進一步瞭解解決方式,這樣也是避免未來 debug 時花一大堆時間抓出一隻很可笑的 bug. | ||
+ | ===== - Perl ===== | ||
+ | * 使用 defined() 這個內建的 function 來判別 | ||
+ | * 以下範例就是針對命令列要指定路定參數,如果沒有指定就將 $argv_path 設為空字串< | ||
+ | $argv_path = (!defined($ARGV[0]))?"": | ||
+ | </ | ||
+ | * 如果一個已經有定義的變數要變成沒定義過, | ||
+ | undef($argv_path); | ||
+ | </ | ||
+ | |||
+ | * 參考 http:// | ||
+ | |||
+ | ===== - PHP ===== | ||
+ | * 使用 isset() 這個 function 來判別 | ||
+ | * 以下範例就是針對參數 $p_op 來檢測是否有定義,如果沒有定義就將 $p_op 設為空字串< | ||
+ | $p_op = (!isset($p_op))?"": | ||
+ | </ | ||
+ | |||
+ | * 參考 http:// | ||
+ | |||
+ | ===== Perl / PHP Translation ===== | ||
+ | * 參考 http:// | ||
+ | |||
+ | |||
+ | {{tag> |