PHP新手之PHP數(shù)組變量的使用
PHP經(jīng)過長時(shí)間的發(fā)展,很多用戶都很了解PHP了,這里我發(fā)表一下個(gè)人理解,和大家討論討論。花費(fèi)大量時(shí)間瀏覽PHP的外部風(fēng)景(學(xué)習(xí)了所有關(guān)于PHP的控制結(jié)構(gòu)、操作符和變量的內(nèi)容),對(duì)此,你可能已經(jīng)厭煩了。你也許甚至考慮立即退出該教程,然后更愿意(大約你會(huì)這么認(rèn)為)把時(shí)間花費(fèi)在電視機(jī)前。
如果這樣,那將會(huì)是一個(gè)大的錯(cuò)誤。而當(dāng)我說“大”的時(shí)候,我的意思是指巨大。 你看,如果你因?yàn)锳lly McBeal的魅力而放棄該教程本章節(jié)內(nèi)容的學(xué)習(xí),那么你將會(huì)錯(cuò)失接觸PHP最酷的變量類型之一的機(jī)會(huì)。它就是被稱為“數(shù)組(array)”的一個(gè)小玩意,而且我毫不夸張的說,當(dāng)我告訴你一旦你適應(yīng)它的用法,你將對(duì)PHP腳本另眼相看。但是,不要把我的話當(dāng)作……,把那些仍到一邊,自己親自試試看!截至目前,我們所討論的變量只包含一個(gè)值,就像下面代碼所示的一樣
- <?php $i = 5; ?>
然而,數(shù)組變量是完全不同的狀況。數(shù)組是一種復(fù)雜的變量類型,其允許你在單一變量中存儲(chǔ)多個(gè)值(當(dāng)你需要存儲(chǔ)和描述相關(guān)信息的時(shí)候,它可以很容易地做到)。我們可以把PHP數(shù)組變量當(dāng)作可以容納一個(gè)或多個(gè)值的“容器”變量。例如:
- <?php // define an array $pizzaToppings = array('onion', 'tomato', 'cheese'
這里,$pizzaToppings是一個(gè)數(shù)組變量,其包含‘onion’、‘tomato’、‘cheese’、‘anchovies’、‘ham’和‘pepperoni’這些值(數(shù)組變量對(duì)于相關(guān)值進(jìn)行分組尤其有用)。 Print_r()是一個(gè)特殊的函數(shù),其允許你窺見PHP數(shù)組變量里面的值。和用于顯示數(shù)組內(nèi)容的目的比較而言,它對(duì)于程序調(diào)試(找出腳本失效的原因)更有用,但我將在這里使用它以使你可以理解表面之下所正在發(fā)生的。確保讓你的服務(wù)器運(yùn)行和瀏覽器打開,好嗎?
數(shù)組里面不同的元素通過索引值來訪問,且其第一個(gè)元素的索引值從0開始。因此,為了訪問元素‘onion’,你將使用符號(hào)$pizzaToppings[0],而‘anchovies'將是$pizzaToppings[3](本質(zhì)上是數(shù)組變量名稱緊跟著被中括號(hào)所包含的索引值)。
PHP也允許你用用戶自定義的“關(guān)鍵字”來代替索引,這是為了創(chuàng)建一種稍微不同類型的數(shù)組。其中,每個(gè)關(guān)鍵字都是唯一的,并且對(duì)應(yīng)于數(shù)組中的一個(gè)單一值。
- <?php // define an array $fruits = array('red' => 'apple', 'yellow' => 'banana', 'purple' =>
- 'plum', 'green' => 'grape'); print_r($fruits); ?>
在該實(shí)例中,$fruits是一個(gè)包含四個(gè)關(guān)鍵字值對(duì)的PHP數(shù)組變量。(=>符號(hào)用于指示關(guān)鍵字和其對(duì)應(yīng)的值之間的關(guān)聯(lián)關(guān)系)。為了訪問 ‘banana’值,你要使用$fruits[‘yellow']符號(hào),而‘grape’值通過符號(hào)$fruits[‘green']來訪問。
該種類型的數(shù)組有時(shí)被稱為“散列數(shù)組”或“關(guān)聯(lián)數(shù)組”。如果你曾經(jīng)使用過Perl語言,那么你將會(huì)看到它類似于Perl語言中的散列變量。
希望通過本文對(duì)PHP數(shù)組變量的介紹,能夠給你帶來一定的幫助。