8/07/2011

[php] 小知識

isset($x)
檢查$x 是否被定義過

傳址呼叫
function double(&$x){
$x *= $x;
}
include()
引用錯誤會繼續執行
require()
引用錯誤會中斷執行
include_once() 和 require_once()
相同的php檔在同一頁只會被引用一次

nl2br()
把換行字元取代成<br />

==
值相等為真

===
值和型態相等才為真

foreach( $arr as $value){
echo $value;
}

foreach( $students as $name => $score){
echo "$name 考了 $score 分<br />";
}

die($error_msg)
exit($error_msg)
中斷執行並顯示訊息

header() 設定HTTP 協定表頭
//網頁轉向到google
header('Location: http://www.google.com');
//設定網頁是utf-8
header('Content-Type: text/html; charset=utf-8');

測試變數

isset($var) //是否被設定
empty ($var) //是否為0或空值
is_array($var) //是否 為陣列
is_int($var) //是否為int
is_null($var) //是否為null
is_numeric($var) //是否為數字或數字形式的字串
is_string($var) //是否 為字串

unset($var) //刪除變數

亂數
mt_rand(1,100) //隨機產生1-100   (windows最小0 最大32768)

__FILE__ 與 __LINE__,分別代表目前正在被直譯執行的檔案名稱與執行的行數

 

//////2011/8/28///////////////
使用 ip2long() 和 long2ip() 函數來把 IP 地址轉化成整型存儲到數據庫里。這種方法把存儲空間降到了接近四分之一

在驗證 email 地址的時候使用 checkdnsrr() 函數驗證域名是否存在。

.使用 error_reporting(0) 函數來防止用戶看到潛在的敏感錯誤信息。]在理想情況下,發布伺服器應該在 php.ini 里完全禁止。但是如果你用的是一個共享的 web 伺服器的話,你沒有自己的 php.ini 文件,那么這種情況下你最好的選擇就是在所有腳本的第一行前加上 error_reporting(0);(或者使用 require_once() 方法)。這就能夠在出錯的時候完全屏蔽敏感的 SQL 查詢語句和路徑名。

.在網數據庫中存儲很大的字符串之前使用 gzcompress() 和 gzuncompress() 來顯式的壓縮/解壓字符串。這個 PHP 內置函數使用 gzip 算法,可以壓縮普通文本達 90%。

沒有留言:

張貼留言