數組在 php 裡的運用至少比 C 來的簡單,在一般的 php 程序裡很少用到數組這個概念,用的較多的是判斷,循環和 cookie,但是掌握數組的運用技巧卻是很重要,因為它能夠使程序的功能更加自動化,讓客戶在功能強大但操作性能差和功能小巧玲珑但操作性非常方便的程序裡選擇,我想客戶會選擇後者.
在介紹數組運用之前,我得在這聲明,我在這只是介紹運用數組的思路,即在什麼情況下可以運用數組來簡化完成任務,其中舉的例子也只是提供一個思路,不會面面俱到.
什麼時候使用數組,一般在碰到大范圍變量傳送和處理的情況下考慮用數組來完成.
我用數組完成任務的一個實例:
有一次我為客戶寫了一個後台管理程序,程序完成後,客戶很滿意,但過了不久客戶就來找我了,並對我說:"我發現裡面有很多垃圾信息,我不想保留它們,在刪除時,我遇到麻煩了,我不得不每次點'刪除'去刪除每一條信息你能不能幫我設計一個一次過把全部垃圾刪除的功能...";當然我接受了這個任務,因為客戶就是上帝.
在開始加入這個功能進管理程序的時候,我考慮用數組來完成它,於是就寫了一個流程圖:
查找垃圾信息唯一識別字 id -->數組-->對應數組內的 id 刪除數據庫記錄
好了由這個流程圖,就可以開始設計程序了,為了使用數組成功傳遞變量,我使用了提交表擋的 checkbox,具體的寫法:
echo "<input type=checkbox name=delete[$id] value='y'>";
這樣我就將垃圾信息的 id 與數組下標對應的空間附值,這樣就可以對數據庫進行實質操作了,下面來看看數組被傳到刪除功能塊時是如何完成任務的;
//首先查找數據庫所有記錄的 id:
.....
for ($i=0;$i<$num;$i++) {
$id=mysql_result($result,$i,"id");
//判斷數組
if (!empty($delete[$id])) {
//執行刪除命令
mysql_query("delete from table where id=$id");
}
}
......
一個自動化的刪除功能完成了,用數組還可完成很多不同的任務如:隨機更新圖片,對比等等...
活用數組可以完成一些看上去很難完成的任務