程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 第六章_PHP數組

第六章_PHP數組

編輯:關於PHP編程

  1.PHP支持兩種數組:索引數組(indexed array)和關聯數組(associative array),前者使用數字作為鍵,後者使用字符串作為鍵。

  2.遍歷索引數組

    2.1 for循環語句

    2.2 while循環語句

    2.3 do...while循環語句

    2.4 foreach語句

    2.5使用list()

      list()只能用於下標從0開始的索引數組,語法格式如下:

        void list(mixed $var, mixed $...)

 <?     =('Kimi',5,'Angela'     
     (,,)=      .' '..' '. ?>

    2.6 使用each()(不明白)

    2.7 混合使用list()和each()遍歷數組(不明白)

  3.遍歷關聯數組

    常常使用foreach語句來遍歷

    下面是一個使用foreach語句遍歷二維數組的例子:

 <?     =         'boy'=>             'name'=>'Kimi',
             'age'=>4,
             'nickname'=>'kimi',
         ),
         'girl'=>             'name'=>'Cindy',
             'age'=>5,
             'nickname'=>'wind'
         ),   
      (   =>           .' => <br>'         
         (   =>               '&nbsp&nbsp'..' => '..'<br>';    
   ?>

  4.數組的操作

    4.1 檢查數組中是否存在指定的值使用array_search()

 <?     =('name'=>'Kimi','age'=>5,'hobby'=>'reading',1=>2013     
     =('Kimi',      '<p>'.     
     =(5,      '<p>'.     
     =('read',     (     
     =(2013,      '<p>'. ?>

    4.2 把一個或多個數組合並為一個數組使用array_merge()

       函數返回合並後的數組,如果待合並的數組中有相同的字符串鍵名,則該鍵名後面的值將覆蓋前一個值。如果待合並的數組中包含相同的數組鍵名,後面的值將不會覆蓋原來的值,而是附加到該元素後面。

 <?     =('name'=>'Cindy','age'=>5     =('name'=>'Kimi','age'=>4     =(0=>2000     =(0=>2001     
     =(,,,     ( ?>

    4.3 把一個數組分割為多個數組使用array_chunk()

    語法格式如下:

    array array_chunk(arrray $input, int $size [, bool $preserve_keys])

    其中,$input是分割的數組變量,$size是分割成的每個數組的元素個數(最後一個數組的元素可以小於$size),可選參數$preserve_keys默認為false,表示分割後的數組索引將從0開始重新編排。若設置為true,則分割後的數組將保留原數組中的鍵名。一維數組分割一次變成二維數組。

    4.4 統計數組中所有值出現的次數使用array_count_values()

    語法格式如下:

    array array_count_values( array $input)

    其中,$input是待統計的數組。該函數返回一個關聯數組,其鍵名為$input數組中的元素的值,鍵值為該元素的值在$input數組中出現的次數

 <?     =('Kimi',5,'age'=>5,'name'=>'Kimi',2005     =(     (     ( ?>

    4.5 計算數組中所有值的和使用array_sum()

    語法格式如下:

    number array_sum(array $array)

    4.6 刪除數組中重復的值使用array_unique()

    語法格式如下:

    array array_unique(array $array)

    其中,$array是待操作的數組。該函數首先將鍵值作為字符串進行排序,保留第一次遇到的值所對應的鍵名,最後返回一個沒有重復值得新數組。

    4.7 計算數組中的元素數目使用count()

    語法格式如下:

    int count( array $array [, int $mode])

    其中,$array是待計算的數組,可選參數$mode默認值為0,表示不進行遞歸統計元素個數,可以設置為1(或COUNT_RECURSIVE),表示遞歸統計元素的數目。

 <?     =         'boy'=>('name'=>'Kimi',
                      'nickname'=>'K',
                      'age'=>5),
         'girl'=>('name'=>'Cindy',
                       'nickname'=>'C',
                       'age'=>4),
      
      '<P>不遞歸統計元素個數:'.(      '<p>遞歸統計元素個數:'.(, ?>        

    4.8 對數組正向排序使用sort()

    語法格式如下:

    bool sort( array &$array [, int $sort_flags])

    其中,參數$array是待排序的數組,可選參數$sort_flags可以為下面4種設置之一。

    ·SORT_REGULAR:通過正常比較進行排序(不改變類型)

    ·SORT_NUMBER:將數組元素作為數字來比較進行排序

    ·SORT_STRING:將數組元素作為字符串來比較並進行排序

    ·SORT_LOCATE_STRING:根據當前的區域(locate)設置把數組元素作為字符串比較並進行排序

    4.9 對數組逆向排序使用rsort()

    類比正向排序。

    4.10 將數組中的元素順序翻轉使用array_reverse()

    語法格式如下:

    array array_reverse( array $array [, bool $preserve_keys])

    其中,$array是待翻轉的數組,可選參數$preserve_keys默認為FALSE,表示不保留原有的鍵名,設置為TRUE後,表示翻轉數組元素時保留原有的鍵名。(關於可選參數,存在疑惑,見下面程序)

 <?     =('gdp'=>'GDP','ht'=>'HT','lq'=>'LQ','lc'=>'LC'     =(,      '<p>'     ( ?>

    4.11 用給定的值填充數組使用array_pad()

    語法格式如下:

    array array_pad( array $input, int $pad_size, mixed $pad_value)

    其中,參數$input是待填充的數組,參數$pad_size是填充後數組的大小,參數$pad_value是用來填充的元素。如果$pad_size為正,填充的元素將位於$input右側,反之亦然。

    4.12 計算多個數組的交集使用array_intersect()

    語法格式如下:

    array array_intersect( array $array1 [, array $array2 [, array $...] ] )

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved