PHP 菜鳥教程

PHP 高級教程

PHP & MySQL

PHP 參考手冊

PHP 數(shù)組

在本教程中,您將學習如何在PHP中的單個變量中存儲多個值。

什么是PHP數(shù)組

數(shù)組是復雜的變量,允許我們在單個變量名下存儲多個值或一組值。 假設(shè)您想要在PHP腳本中存儲顏色,將顏色逐個存儲在變量中可能如下所示:

<?php
$color1 = "Red";
$color2 = "Green";
$color3 = "Blue";
echo $color1;
echo "<br>";

echo $color2;
echo "<br>";

echo $color3;
?>
測試看看?/?

但是,如果您想將國家/地區(qū)的州名或城市名存儲在變量中,那么這次不只是三個就可能是一百個。 將每個城市的名稱存儲在單獨的變量中是非常困難,糟糕且不明智的做法。 數(shù)組在這里就開始起作用了。

PHP中的數(shù)組類型

您可以創(chuàng)建三種類型的數(shù)組。這些是:

  • 索引數(shù)組 — 具有數(shù)字鍵的數(shù)組。

  • 關(guān)聯(lián)數(shù)組 — 每個鍵都有其特定值的數(shù)組。

  • 多維數(shù)組 — 本身包含一個或多個數(shù)組的數(shù)組。

索引數(shù)組

索引數(shù)組或數(shù)字數(shù)組存儲每個具有數(shù)字索引的數(shù)組元素。以下示例顯示了創(chuàng)建索引數(shù)組的兩種方法,最簡單的方法是:

<?php
//定義一個索引數(shù)組
$colors = array("Red", "Green", "Blue");
// 打印數(shù)組結(jié)構(gòu)
print_r($colors);
?>
測試看看?/?

注意:在索引或數(shù)字數(shù)組中,將自動分配索引并從0開始,并且值可以是任何數(shù)據(jù)類型。

這等效于以下示例,其中手動分配了索引:

<?php
$colors[0] = "Red"; 
$colors[1] = "Green"; 
$colors[2] = "Blue"; 
// 打印數(shù)組結(jié)構(gòu)
print_r($colors); 
?>
測試看看?/?

關(guān)聯(lián)數(shù)組

在關(guān)聯(lián)數(shù)組中,分配給值的鍵可以是任意的和用戶定義的字符串。在以下示例中,數(shù)組使用鍵而不是索引號:

<?php
//定義一個關(guān)聯(lián)數(shù)組
$ages = array("Peter"=>22, "Clark"=>32, "John"=>28);
// 打印數(shù)組結(jié)構(gòu)
print_r($ages ); 
?>
測試看看?/?

下面的示例與前面的示例等效,但是顯示了創(chuàng)建關(guān)聯(lián)數(shù)組的另一種方式:

<?php
$ages["Peter"] = "22";
$ages["Clark"] = "32";
$ages["John"] = "28";
// 打印數(shù)組結(jié)構(gòu)
print_r($ages );
?>
測試看看?/?

多維數(shù)組

多維數(shù)組是一個數(shù)組,其中每個元素也可以是一個數(shù)組,子數(shù)組中的每個元素可以是一個數(shù)組,或者進一步在其內(nèi)部包含數(shù)組,依此類推。多維數(shù)組的示例如下所示:

<?php
//定義多維數(shù)組
$contacts = array(
    array(
        "name" => "Peter Parker",
        "email" => "peterparker@mail.com",
    ),
    array(
        "name" => "Clark Kent",
        "email" => "clarkkent@mail.com",
    ),
    array(
        "name" => "Harry Potter",
        "email" => "harrypotter@mail.com",
    )
);
//訪問嵌套值
echo "彼得.帕克的電子郵件 id 是: " . $contacts[0]["email"];
?>
測試看看?/?

查看數(shù)組的結(jié)構(gòu)和值

您可以使用兩個語句 var_dump()或 print_r() 之一,查看任何數(shù)組的結(jié)構(gòu)和值。但是print_r()語句提供的信息稍少一些。看以下示例:

<?php
//定義數(shù)組
$cities = array("London", "Paris", "New York");
 
//顯示城市數(shù)組
print_r($cities);
?>
測試看看?/?

print_r() 語句提供以下輸出:

Array ( [0] => London [1] => Paris [2] => New York )

此輸出顯示數(shù)組中每個元素的鍵和值。要獲取更多信息,請使用以下語句:

<?php
//定義數(shù)組
$cities = array("London", "Paris", "New York");
 
//顯示城市數(shù)組
var_dump($cities);
?>
測試看看?/?

var_dump()語句提供以下輸出:

array(3)?{?[0]=>?string(6) "London" [1]=>?string(5) "Paris" [2]=>?string(8) "New?York"?}

除了鍵和值,此輸出還顯示每個元素的數(shù)據(jù)類型,例如6個字符的字符串。在下一章,您將學習如何對數(shù)組元素進行排序。

循環(huán)章節(jié)中,您將學習如何遍歷數(shù)組的值。

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清