**級別的小優化之一:優先使用php內建函式
以下幾個是可以用到內建函式的場景
1.filter_var函式
類似的還有**的驗證filter_var('',filter_validate_url);
2.prase_url函式
解析url 返回各個組成部分
<?php
$url = '';
print_r(parse_url($url));
echo parse_url($url, php_url_path);
?>
以上結果會輸出:
生成 url-encode 之後的請求字串
當我們過濾url傳遞過來的引數後,可以將這些引數以陣列的形式傳入http_build_query()來構建出query引數:
判斷乙個影象的型別
有時候我們會寫乙個自定義函式來判斷乙個的字尾,但是有些情況下,你修改了的字尾依然能用,但是的真正的字尾我們缺不知道了,該函式能夠獲取到資訊的真正的檔案型別。如下:
<?php
//去乙個png來實驗
$image='./1.png';
$type=exif_imagetype($image);
var_dump($type);
//結果返回3 表示png檔案型別
?>
此時將該檔案的字尾改為jpg,改仍然能正常使用,但是該函式返回的結果仍然是3,定義有以下常量,並代表了
exif_imagetype()
可能的返回值:
該函式用於對判斷型別有較高要求的情況,另外getimagesize()函式返回的結果中的第三個引數跟exif_imagetype()返回的結果是一樣的,但是exif_imagetype()函式要快得多,所以推薦使用exif_imagetype()函式。
note:使用該函式必須開啟extension=php_exif.dll 拓展 而且必須在extension=php_mbstring.dll之後!否則會報錯:call to undefined function exif_imagetype()..
5.$_server
$_server
是乙個包含了諸如頭資訊(header)、路徑(path)、以及指令碼位置(script locations)等等資訊的陣列。
比較經常用到的有:
$_server['remote_addr
']:瀏覽當前頁面的使用者的 ip 位址。
:當前請求頭中
host:
項的內容,如果存在的話。
$_server['server_addr
']:當前執行指令碼所在的伺服器的 ip 位址
。$_server['request_time_float']
:請求開始時的時間戳,微秒級別的精準度。 自 php 5.4.0 開始生效。
$_server[server_name']:當前執行指令碼所在的伺服器的主機名。如果指令碼執行於虛擬主機中,該名稱是由那個虛擬主機所設定的值決定。
note
: 在 apache 2 裡,必須設定 usecanonicalname = on 和 servername。 否則該值會由客戶端提供,就有可能被偽造。 上下文有安全性要求的環境裡,不應該依賴此值。
。。。其他比較經常用到的內建函式可以參考:
比較有用的庫函式
十進位制轉二進位制可以使用庫函式itoa。itoa函式原型 char itoa int value,char string,int radix 功能 將任意型別的數字轉換為字串。例 include include intmain 結果為1010 時間節省了很多 atoi 函式 atoi int at...
感覺比較有用的幾個emacs命令
1.在minibuffer 中執行乙個命令 m 然後輸入命令,emacs 會開啟乙個名為 shell command output 的buffer來輸出命令執行的結果。2.使用乙個buffer的region取代乙個檔案當做命令的輸入 先在乙個buffer中選乙個region。m h mark par...
感覺比較有用的幾個emacs命令
1.在minibuffer 中執行乙個命令 m 然後輸入命令,emacs 會開啟乙個名為 shell command output 的buffer來輸出命令執行的結果。2.使用乙個buffer的region取代乙個檔案當做命令的輸入 先在乙個buffer中選乙個region。m h mark par...