站長資訊網
        最全最豐富的資訊網站

        @PHP基礎之數組(1)

        PHP 中的數組實際上是一個有序圖。圖是一種把 values 映射到 keys 的類型。此類型在很多方面做了優化,因此你可以把它當成真正的數組來使用,或列表(矢量),散列表(是圖的一種實現),字典,集合,棧,隊列以及更多可能 性。因為可以用另一個 PHP 數組作為值,也可以很容易地模擬樹。解釋這些結構超出了本手冊的范圍,但對于每種結構你至少會發現一個例子。要得到這些結構的更多信息,我們建議你參考有 關此廣闊主題的外部著作。

        AD:

        PHP 中的數組實際上是一個有序圖。圖是一種把 values 映射到 keys 的類型。此類型在很多方面做了優化,因此你可以把它當成真正的數組來使用,或列表(矢量),散列表(是圖的一種實現),字典,集合,棧,隊列以及更多可能 性。因為可以用另一個 PHP 數組作為值,也可以很容易地模擬樹。

        解釋這些結構超出了本手冊的范圍,但對于每種結構你至少會發現一個例子。要得到這些結構的更多信息,我們建議你參考有關此廣闊主題的外部著作。

        語法

        定義 array()

        可以用 array() 語言結構來新建一個 array。它接受一定數量用逗號分隔的 key => value 參數對。

        array( [key =>] value      , ...      ) // key 可以是 integer 或者 string // value 可以是任何值 
         "bar", 12 => true);  echo $arr["foo"]; // bar echo $arr[12];    // 1 ?>  

        key 可以是 integer 或者 string。如果鍵名是一個 integer 的標準表達方法,則被解釋為整數(例如 “8” 將被解釋為 8,而 “08” 將被解釋為 “08”)。PHP 中數組下標的變量類型不會對數組造成影響,數組的類型只有一種,它可以同時包含整型和字符串型的下標。 

        值可以是任何值。

         array(6 => 5, 13 => 9, "a" => 42));  echo $arr["somearray"][6];    // 5 echo $arr["somearray"][13];  // 9 echo $arr["somearray"]["a"];  // 42 ?>   

        如果對給出的值沒有指定鍵名,則取當前最大的整數索引值,而新的鍵名將是該值加一。如果你指定的鍵名已經有了值,則該值會被覆蓋。

         43, 32, 56, "b" => 12);  // ...this array array(5 => 43, 6 => 32, 7 => 56, "b" => 12); ?>   

        使用 TRUE 作為鍵名將使 integer 1 成為鍵名。使用 FALSE 作為鍵名將使 integer 0 成為鍵名。使用 NULL 作為鍵名將等同于使用空字符串。使用空字符串作為鍵名將新建(或覆蓋)一個用空字符串作為鍵名的值,這和用空的方括號不一樣。

        不能用數組和對象作為鍵名。這樣做會導致一個警告:Illegal offset type。

        用方括號的語法新建/修改可以通過明示地設定值來改變一個現有的數組。

        這是通過在方括號內指定鍵名來給數組賦值實現的。也可以省略鍵名,在這種情況下給變量名加上一對空的方括號(“[]”)。

        $arr[key] = value; $arr[] = value; // key 可以是 integer 或者 string // value 可以為任何值。 

        如果 $arr 還不存在,將會新建一個。這也是一種定義數組的替換方法。要改變一個值,只要給它賦一個新值。如果要刪除一個鍵名/值對,要對它用 unset()。

         1, 12 => 2); $arr[] = 56;    // This is the same as $arr[13] = 56;                // at this point of the script $arr["x"] = 42; // This adds a new element to                // the array with key "x" unset($arr[5]); // This removes the element from the array unset($arr);    // This deletes the whole array ?>  

        注: 如上所述,如果你給出方括號但沒有指定鍵名,則取當前最大整數索引值,新的鍵名將是該值 + 1。如果當前還沒有整數索引,則鍵名將為 0。如果制定的鍵名已經有值了,該值將被覆蓋。

        注意這里所使用的最大整數鍵名不一定當前就在數組中。它只要在上次數組重新生成索引后曾經存在過就行了。以下例子說明了:
         $value) {    unset($array[$i]); } print_r($array);  // 添加一個單元(注意新的鍵名是 5,而不是你可能以為的 0) $array[] = 6; print_r($array);  // 重新索引: $array = array_values($array); $array[] = 7; print_r($array); ?>   

        以上例子將產生如下輸出:

        Array (     [0] => 1     [1] => 2     [2] => 3     [3] => 4     [4] => 5 ) Array ( ) Array (     [5] => 6 ) Array (     [0] => 6     [1] => 7 ) 
        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 欧美精品免费专区在线观看| 亚洲国产第一站精品蜜芽| 精品a在线观看| 国产乱人伦偷精品视频AAA| 久久这里只有精品视频99| 久久免费精品一区二区| 亚洲午夜精品久久久久久浪潮| 久久精品国产99久久久| 国产精品成人无码久久久久久 | 久久se这里只有精品| 国产a视频精品免费观看| 最新精品国偷自产在线| 精品少妇一区二区三区在线 | 亚洲无码日韩精品第一页| 国产精品夜色视频一级区| 国产精品久久国产精品99盘| 久久狠狠高潮亚洲精品| 中文字幕无码久久精品青草| 久久99精品国产麻豆不卡| 国产免费伦精品一区二区三区| 四虎成人欧美精品在永久在线| 国产精品2019| …久久精品99久久香蕉国产| 日韩精品一区二区三区色欲AV| 中文字幕精品亚洲无线码一区| 久久久久亚洲精品中文字幕| 精品久久人人做人人爽综合| 国产精品你懂的在线播放| 国产69精品久久久久9999| 精品国产亚洲一区二区三区| WWW国产精品内射老师| 精品国产AV一区二区三区| 久久精品国产亚洲av日韩| 国产综合精品一区二区三区| 精品日韩亚洲AV无码一区二区三区| 亚洲精品无码久久久久去q | 国产精品福利区一区二区三区四区 | 亚洲精品二区国产综合野狼| 亚洲精品黄色视频在线观看免费资源 | 久久精品国产国产精品四凭| 国内精品久久久久影院网站|