在網(wǎng)頁(yè)設計中復合類(lèi)型包括兩種數據,即數組和對象。
數組在PHP中數組實(shí)際上是一個(gè)有序映射。映射是一種把values關(guān)聯(lián)到keys的類(lèi)型。此類(lèi)型在很多方面做了優(yōu)化,因此可以把它當成真正的數組,或列表(向量)、散列表(是映射的一種實(shí)現)、字典、集合、棧、隊列以及更多可能性。數組元素的值也可以是另一個(gè)數組。樹(shù)形結構和多維數組也是允許的。
定義數組可以使用array()結構。該函數能夠接受任意數量用逗號分隔的鍵(key)/值(value)對,鍵值之間通過(guò)=>運算符連接。鍵(key)可以是一個(gè)整數或字符串,值(value)可以是任意類(lèi)型的數據。例如:<?php$arr = array("foo" => "bar", 12 => true);echo $arr["foo"]; //barecho $arr[12]; //1?>在PHP中索引數組與關(guān)聯(lián)數組是相同的,它們都可以同時(shí)包含整型和字符串的下標。例如:<?php$arr = array("somearray" => array(6 => 5, 13 => 9, "a" => 42));echo $arr["somearray"][6]; //5echo $arr["somearray"][13]; //9echo $arr["somearray"]["a"]; //42?>
如果給出的值沒(méi)有指定鍵名,則取當前最大的整數索引值,而新的鍵名將是該值加1。如果指定的鍵名已經(jīng)有了值,則該值會(huì )被覆蓋。
使用true作為鍵名,將定義整數1為鍵名。使用false作為鍵名,將定義整數0為鍵名。使用NULL作為鍵名,將定義空字符串為鍵名。使用空字符串作為鍵名將新建(或覆蓋)一個(gè)用空字符串作為鍵名的值,這和用空的方括號不一樣。注意:不能使用數組和對象作為鍵(key)。
另外,還可以通過(guò)在方括號內指定鍵名來(lái)給數組賦值。也可以省略鍵名,在這種情況下給變量名加上一對空的方括號(“[]”)。如:$arr[key] = value;$arr[] = value;這是一種定義數組的替換方法。要改變一個(gè)值,只要給它賦一個(gè)新值。如果要刪除一個(gè)鍵/值對,可以使用unset()函數。如:<?php$arr = array(5 => 1, 12 => 2);$arr[] = 56; //等于$arr[13] = 56;$arr["x"] = 42; //添加一個(gè)新元素,鍵名為"x"unset($arr[5]); //從數組中移除一個(gè)元素unset($arr); //刪除整個(gè)數組?>
注意:這里所使用的最大整數鍵名不一定就在當前數組中。它只要在上次數組重新生成索引后曾經(jīng)存在過(guò)就行了。如: <?php $array = array(1, 2, 3, 4, 5); //創(chuàng )建一個(gè)簡(jiǎn)單的數組 print_r($array); //現在刪除其中的所有元素,但保持數組本身不變 foreach ($array as $i => $value) { unset($array[$i]); } print_r($array); $array[] = 6; //添加一個(gè)單元(注意新的鍵名是5,而不0) print_r($array); $array = array_values($array); //重新索引 $array[] = 7; print_r($array); ?>
對象
對象是面向對象編程的基礎,在PHP中使用new語(yǔ)句實(shí)例化一個(gè)類(lèi),即可創(chuàng )建一個(gè)對象,如:<?phpclass foo{ //創(chuàng )建一個(gè)類(lèi) function do_foo() { echo "Doing foo."; }}$bar = new foo; //創(chuàng )建對象$bar->do_foo(); //調用對象包含的函數?>
以上就是網(wǎng)頁(yè)設計中的數組和對象。
當前文章標題:復合類(lèi)型
當前URL:http://amzcoolest.com/news/wzzz/3233.html
上一篇:標量類(lèi)型
下一篇:特殊類(lèi)型