數組使用個人總結

來源:互聯網
上載者:User
1、數字索引數組
1.1、數字索引數組的初始化

要建立一個數組,可以使用array(),如下所示:

$products = array('Tires', 'Oil', 'Spark Plugs');

如果需要按升序排列的數字儲存在一個數組中,可以使用range()函數自動建立這個數組。如下建立一個1~10的數字數組:

$numbers = range(1, 10);

range()函數具有第三個選擇性參數,允許設定值之間的步幅。這個函數同時也可以對字元進行操作。

1.2、訪問數組的內容1.3、使用逐一查看數組

由於數組使用有序的數字作為索引,所以使用一個for迴圈就可以很容易顯示數組的內容:

for($i=0; $i<3; $i++)

{

echo $products[$i];

}

也可以使用foreach迴圈,這個迴圈是專門為數組設計的,如下所示:

foreach($products as $current)

{

echo $current." ";

}

2、使用不同索引的數組
2.1、初始化關聯陣列

如下所示的代碼可以建立一個以產品名稱作為關鍵字、以價格作為值的關聯陣列:

$prices = array('Tires'=>100, 'Oil'=>10, 'Spark Plugs'=>4);

2.2、訪問數組元素

同樣,可以使用變數名稱和關鍵字訪問數組的內容。

2.3、使用迴圈語句

因為關聯陣列的索引不是數字,因此無法在for迴圈語句中使用一個簡單的計數器對數組進行操作。但是可以使用foreach()迴圈或list()和each()結構。

當使用foreach()迴圈語句對關聯陣列進行操作時,foreach迴圈具有不同的結構。可以在前面的例子中使用這個迴圈語句,也可以按如下方式使用關鍵字:

foreach($prices as $key => $value)

{

echo $key . " - " . $value. "<br />";

}

如下所示的代碼將使用each()結構列印$prices數組的內容:

while($element = each($prices))

{

echo $element['key'];

echo "-";

echo $element['value'];

echo "<br />";

}

其中each()函數將返回數組的當前元素,並將下一個元素作為當前元素。

另外,還有一中更進階和常見的方式來完成相同的操作。函數list()可以用來將一個數組分解為一系列的值。如下所示:

while(list($product, $price) = each($prices))

{

echo "$product - $price<br />";

}


3、數組排序
3.1、使用sort()函數

按照字母或者數位升序進行排序。注意該函數是區分大小寫。

3.2、使用asort()函數和ksort()函數對關聯陣列排序

函數asort()根據數組的每個元素值進行排序。如果是要按照關鍵字排序而不是按值排序,就可以使用ksort()函數。

3.3、反向排序

實現反向排序的函數是rsort()、arsort()和krsort()。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.