上期連接:開心學php100天 第一天 本期格言: 爲何有的人學php總感受有的知識點學的很好有的知識點卻始終學不會,那是由於學的時候臉部肌肉太緊張,致使神經末梢壞死,因此瘸了。 本期知識點:php數組 數組是php最爲標誌性的利器功能。學好php數組基本上你就有了在php界混的初期資本了。 之前我有一個朋友開了一個電腦公司。通常電腦公司主營業務就是賣電腦,偶爾也會搭一些零配 http://www.163123.info/linked/20130317.do 件,固然視狀況不一樣也有一些公司附帶着賣一些光盤,如電影、遊戲等。我那朋友比較有技術氣息本身也是草根程序員出身,對賣光盤行爲很鄙視尤爲是賣島國的光盤。初期有一大段時間他的主營業務是幫一些公司或企業作網站。當時的宣傳性網站徹底沒有如今的複雜,基本上就2-3個頁面,動態網站多一點也不會超過10個界面,況且當時有不少免費空間,因此當時他那幾百幾百賺很輕鬆、很敏捷、很高效啊,我曾「偷師」他的網站代碼,我記不清楚所有,只能yy一下大概的模樣,你們能夠小看一下,php的:
<?php echo $fix[0]?></a>
//注意當時800*600是國標,不要想太多
|
....這裏是亂七八糟的 假大空神句 ....... |
....這裏是同類網站各自互相支持穿插的廣告,如:「激起你心中的虎」或「用了XXX後腿腳好了,也不起夜了」等等。 |
?
echo ''.$eachline.''; //商品標題很聳聽,意思是不買 你會後悔白來世上一趟 ?> |
........注意這裏已然是頁面的尾部了.......... //注意當時 備案 真的不嚴 //注意當時我朋友不會腳本,所以該頁面要刷一次纔會變化當前時間。 |
好,以上就是我朋友賴以生存的一個基本技能。聽說換個同類型的客戶他只要把「產品列表.txt」 換換內容,而後把td的背景圖片換掉,頁面立馬洗新革面,我朋友當時很是 嚴肅的告訴我,他已經實現「產品化」的開發模式了。我膜拜的五體投地,由於我當時初學asp時,絕對沒有這麼「可配置化」。 網頁裏面的廣告和語句你們不要太糾結,反正當時做爲小白的我看了這個網頁,很想花錢試一試,不過我朋友告訴我我還沒到用的時候。我追問「何時能用」,我朋友「扇」了我一巴掌。 接下來咱們切入正題,解釋一下上文中的知識點。 1、數組最基本的表現形式 $fix=array("內容1","內容2","內容3");這個是php數組最基本的表現方式。請原諒我不想把廣告詞再打一遍,太噁心了。 你想堆積多少內容都可,只要你寫的下。當你要調用裏面的內容時,你只要從「0」開始計數進行調用,如$fix[0],$fix[1]...$fix[n]。 注意:爲何要從0開始。一個是由於"php老大"就是這麼設計的,另一個是由於 這個最最基本數組的真身是 $fix=array(0=>"內容1",1=>"內容2",2=>"內容3「); "=>"這個符號是被省略了,這個符號 左邊是 鍵,右邊是值,通常不少教科書上 會解釋成 "$key=>$value".你們不要糾結爲何左邊是$key右邊是$value,我告訴你們是習慣性寫法,你要寫成 $ss=>$bb,都表明左邊那個是鍵,右邊那個是值。 因此:任何一個形式的數組 都會有鍵和值。省不省略看你的,無論你省不省,反正我省了。 拓展一下:既然有鍵值,那麼就能夠更改鍵值。 譬如 $fix=array("誇張的網站名稱"=>"中國最大的XXX網站 ","扯蛋的產品品牌"=>"只有咱們是最正宗的","聽了想吐的廣告語"=>"假一罰十毫不坑人"); 這個時候假如你要把 "扯蛋的產品品牌" 輸出到頁面,你就不能用 echo $fix[1]; 由於鍵值 已經被你改了。 應該用 echo $fix['扯蛋的產品品牌']; 2、遍歷數組 繼續以 $fix=array("內容1","內容2","內容3"); 爲例子 一、用foreach是循環小型數組最貼身最適合的方法。 基本語法是:foreach(這裏是原始數組 as 這裏寫每次遍歷時設置的變量) 例如:foreach($var as $eachline) echo $eachline; 則會以此輸出 內容1.....內容3; 二、不少人知道其實還有一個 while 能夠遍歷數組 基本語法是:while(list($key,$value)=each($attr)) 例如:while(list($key,$value)=each($fix)) echo $key.$value; 則會依次輸出 0內容1.。。。。2內容2; 這兩種遍歷區別這裏不講的太深,後面會講到,我如今只告訴你們,若是你只是要遍歷數據,那麼無論啥時候都用foreach。若是你要在遍歷過程當中還要更改數組的值,那麼用while。緣由只有一個字,爲了"快「。如今生活節奏太快,寫程序首要原則是」快「。 至於其餘遍歷數組的語法還有,我我的認爲咱不必學了,除非你去考秀才,若是是實戰 這兩種夠了,咱們也是爲了快。 拓展一下,數組裏面的值不光能夠放字符串,也能夠放數組也能夠任何形式的變量值. 如 $fix=array("扯蛋的廣告詞"=>array("前100位訂購者,再送200元大禮包","20天精通某語言","孩子不吃飯是由於缺X")); 對於這樣的數組,$fix['扯蛋的廣告詞'] 的值實際上是個數組、 譬如 echo $fix['扯蛋的廣告詞'][1]; 則會輸出 "20天精通某語言" 3、數組的賦值 來舉個例子: $fix=array(); 這個數組是空的。 $fix[]="內容1」; 此時就等同於 $fix=array("內容1");或者$fix=array(0=>"內容1"); $fix[]="內容2";此時等同於 $fix=array("內容1","內容2"); 或者 $fix=array(0=>"內容1",1=>"內容2"); $fix['咱們在學什麼']='php'; 此時等同於 $fix=array(0=>"內容1","咱們在學什麼"=>"php"); 以上賦值都是在數組的尾部賦值,其實還有array_push函數能夠賦值,語法是$fix=array_push($fix,"內容1","內容2");效果是同樣的,只不過array_push能夠一會兒加好多值,用'[]'一次一個。 php數組函數很強大,幾乎想幹什麼都能幹到,譬如數組的排序、合併、反轉、刪除等等,你們能夠百度一下,因爲篇幅問題這裏很少講,函數靠背、靠多用就會,不難。不過呢,到了實戰作項目 不少數據的處理都須要經過數據庫存儲過程、優化的表結構、好的數據排序算法、技巧化的數據讀取方式來作,真正實戰php裏面好多數組的函數基本上是用不到的,譬如你接到了一個1230X這樣的項目,要列出全部國人的名字並排序你敢用php數組來遍歷着幹而且合併、反轉嗎。固然假如你的客戶是面向梵蒂岡或者冰島的那能夠這麼幹。 不過不少函數譬如, is_array--是不是數組 in_array---是否存在某值,array_key_exists---數組中是否存在某鍵值等等經常使用的函數是必定要學會的。如學不會,那你離作領導也不遠了。 彩蛋: 上文中有個 $var=file("./產品列表.txt"); 意思是把文本文檔一次性讀取,而且按照行讀取成數組,其中包括換行符。 下一天 講php偉岸的文件操做,請你們預熱。 http://www.starkp.com/linked/20130317.do