在可以用file_get_contents替代file、fopen、feof、fgets等系列方法的情況下,盡量用file_get_contents,因?yàn)樗男矢叩枚啵〉且⒁鈌ile_get_contents在打開一個(gè)url文件時(shí)候的php版本問題.
file_get_contents() 函數(shù)把整個(gè)文件讀入一個(gè)字符串中,和 file() 一樣,不同的是 file_get_contents() 把文件讀入一個(gè)字符串.
file_get_contents() 函數(shù)是用于將文件的內(nèi)容讀入到一個(gè)字符串中的首選方法,如果操作系統(tǒng)支持,還會(huì)使用內(nèi)存映射技術(shù)來增強(qiáng)性能.
語法
file_get_contents(path,include_path,context,start,max_length)參數(shù) 描述
path 必需,規(guī)定要讀取的文件.
include_path 可選,如果也想在 include_path 中搜尋文件的話,可以將該參數(shù)設(shè)為 "1".
context 可選。規(guī)定文件句柄的環(huán)境.
context 是一套可以修改流的行為的選項(xiàng),若使用 null,則忽略.
start 可選。規(guī)定在文件中開始讀取的位置,該參數(shù)是 php 5.1 新加的.
max_length 可選。規(guī)定讀取的字節(jié)數(shù),該參數(shù)是 php 5.1 新加的.
說明
2.盡量的少進(jìn)行文件操作,雖然php的文件操作效率也不低的;
3.優(yōu)化select sql語句,在可能的情況下盡量少的進(jìn)行insert、update操作(在update上,我被惡批過);
加入可以用lock table與unlock來實(shí)例批量插入
4.盡可能的使用php內(nèi)部函數(shù)(但是我卻為了找個(gè)php里面不存在的函數(shù),浪費(fèi)了本可以寫出一個(gè)自定義函數(shù)的時(shí)間,經(jīng)驗(yàn)問題啊);
內(nèi)部函數(shù)如,time,date,fopen,rsort等
5.循環(huán)內(nèi)部不要聲明變量,尤其是大變量:對(duì)象(這好像不只是php里面要注意的問題吧?);
如果for($i=1;$i<=10;$i++){ $a=1;...}
6.多維數(shù)組盡量不要循環(huán)嵌套賦值;
7.在可以用php內(nèi)部字符串操作函數(shù)的情況下,不要用正則表達(dá)式;
8.foreach效率更高,盡量用foreach代替while和for循環(huán);
9.用單引號(hào)替代雙引號(hào)引用字符串;
10.“用i+=1代替i=i+1。符合c/c++的習(xí)慣,效率還高”;
11.對(duì)global變量,應(yīng)該用完就unset()掉;