PHP經過長時間的發展,很多使用者都很瞭解PHP了,這裡我發表一下個人理解,和大家討論討論關於PHP數組元素。如果你曾經寫過使用大量變數的指令碼(有時候近100個),你就會知道跟蹤每個變數的內容和用途是多麼的難受。真的,我曾經有過這樣的經曆。如果我們能把變數儲存在另一個變數裡邊,變數列表的長度就從100減少到10以內。這就是數組是如何而來的。
一個數組,從最簡單的形式來講,是一個儲存變數的變數。這很像一個城市裡的一列房屋。城市擁有很多房屋,而每個房屋有一個地址。同樣的情況,每個變數(房子)在一個數組(城市)裡有它自己的地址,我們叫它索引。讓我們假設你有三個人名分別存放在叫做$sPerson1、$sPerson2和$sPerson3的變數中。現在你可以在你的程式中使用這三個變數,但是這樣很容易忘記哪個變數是哪個……尤其是有其他變數的時候。要將這三個變數放到一個數組中,你可以像這樣做:
- php
- $arrayarrayPeople = array("John", "Susie", "Dave");
- ?>
現在,我使用$arrayPeople來代替$sPerson1, $sPerson2, and $sPerson3。注意我是如何使用PHP中的array()函數的。如果這三個名字是數字,我不會使用引號把它引起來。為了顯示這三個名字,我是這樣做的:
- php
- $arrayarrayPeople = array("John", "Susie", "Dave");
- print $arrayPeople[0];
- print $arrayPeople[1];
- print $arrayPeople[2];
- ?>
為什麼是從零開始?因為索引從那裡開始。不管你把什麼放到數組裡,索引總是從零(0)開始自動累加。你可以手動給索引指定一個特定的入口,等一下我會說到這點。現在我將給你示範怎麼通過一個迴圈自動的顯示一個數組的內容:
- php
- $arrayarrayPeople = array("John", "Susie", "Dave");
- $nArraySize = count($arrayPeople);
- for($index=0; $index < $nArraySize; $index++) // max. index is always number of entries - 1
- // because index starts at zero
- {
- print $arrayPeople[$index];
- }
- ?>
在這種情況下,$index是條目的索引(地址),$nArraySize是PHP數組元素的個數。count()函數返回PHP數組元素的個數。對像我剛才使用的小數組而已,使用迴圈的確增加了代碼的長度,但是當你開始處理元素成百上千的數組時(他們的確存在),你就會很樂意使用迴圈了。
下邊我將講講如何建立為數組建立你自己的索引。每當我使用SESSIONS來為我的網站設定管理員權限的時候,我都會使用數組來儲存seesion資訊。這裡是相關的代碼
- php
- $SESSION= array(); // that creates a blank array
- $SESSION["username"] = $sUserName;
- $SESSION["password"] = $sPassword;
- $SESSION["accesslevel"] = $nLevel;
- // etc,etc,etc.
- ?>
看見我怎麼使用單詞來表示索引了嗎?這樣我就可以知道$SESSION["username"]包含的是人名。這比要從$SESSION[0]記起它儲存的是使用者名稱容易多了。我使用數組時總是像這樣使用變數的名字代替索引來表示元素。所以為了在數組$arrayDays中儲存$nDaysinMay,我會使用$arrayDays["nDaysinMay"]。這樣我就能始終知道元素裡包含的是什麼變數。
http://www.bkjia.com/PHPjc/446496.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/446496.htmlTechArticlePHP經過長時間的發展,很多使用者都很瞭解PHP了,這裡我發表一下個人理解,和大家討論討論關於PHP數組元素。如果你曾經寫過使用大量變數...