php數組相關總結_PHP教程

來源:互聯網
上載者:User
一 數組文法
定義數組 array()
可以用 array() 語言結構來建立一個 array。它接受任意數量用逗號分隔的 鍵(key) => 值(value) 對。
array( key => value
, ...
)
// 鍵(key) 可是是一個 整數(integer) 或 字串(string)
// 值(value) 可以是任意類型的值
$arr = array("foo" => "bar", 12 => true);
echo $arr["foo"]; // bar
echo $arr[12]; // 1
?>
key 可以是 integer 或者 string。如果key是一個 integer 的標準表示,則被解釋為整數(例如 "8" 將被解釋為 8,而 "08" 將被解釋為 "08")。key 中的浮點數被取整為 integer。在 PHP 中索引數組與關聯 數組 是相同的,它們都可以同時包含 整型 和 字串 的下標。
值可以是任意的 PHP 類型。
$arr = array("somearray" => array(6 => 5, 13 => 9, "a" => 42));
echo $arr["somearray"][6]; // 5
echo $arr["somearray"][13]; // 9
echo $arr["somearray"]["a"]; // 42
?>
如果對給出的值沒有指定鍵名,則取當前最大的整數索引值,而新的鍵名將是該值加一。如果指定的鍵名已經有了值,則該值會被覆蓋。
// 這個數組與下面的數組相同 ...
array(5 => 43, 32, 56, "b" => 12);
// ...
array(5 => 43, 6 => 32, 7 => 56, "b" => 12);
?>
使用 TRUE 作為鍵名將使 integer 1 成為鍵名。使用 FALSE 作為鍵名將使 integer 0 成為鍵名。使用 NULL 作為鍵名將等同於使用Null 字元串。使用Null 字元串作為鍵名將建立(或覆蓋)一個用Null 字元串作為鍵名的值,這和用空的方括弧不一樣。
不能用數組和對象作為鍵(key)。這樣做會導致一個警告:Illegal offset type。
用方括弧的文法建立/修改
可以通過明示地設定值來改變一個現有的數組。
這是通過在方括弧內指定鍵名來給數組賦值實現的。也可以省略鍵名,在這種情況下給變數名加上一對空的方括弧(“[]”)。
$arr[key] = value;
$arr[] = value;
// key 可以是 integer 或 string
// value 可以是任意類型的值如果 $arr 還不存在,將會建立一個。這也是一種定義數組的替換方法。要改變一個值,只要給它賦一個新值。如果要刪除一個鍵名/值對,要對它用 unset()。
$arr = array(5 => 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
?>
Note:
如上所述,如果給出方括弧但沒有指定鍵名,則取當前最大整數索引值,新的鍵名將是該值 + 1。如果當前還沒有整數索引,則鍵名將為 0。如果指定的鍵名已經有值了,該值將被覆蓋。
注意這裡所使用的最大整數鍵名不一定當前就在數組中。它只要在上次數組重建索引後曾經存在過就行了。以下面的例子來說明:
// 建立一個簡單的數組
$array = array(1, 2, 3, 4, 5);
print_r($array);
// 現在刪除其中的所有元素,但保持數組本身不變:
foreach ($array as $i => $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
二 數組函數
1.數組合并:
array array_merge(array1.array2);
2.刪除數組中的最後一個元素,即將數組最後一個單元彈出
mixed array_pop(array $array);
$array 必須是陣列變數
傳回值:mixed:是被刪除的元素
3.向數組的結尾壓入資料
int array_push(array $array ,mixed var[,mixed....])
第一個參數:array 必須是陣列變數 (引用傳遞)
第二個參數:var[,mixed....] 可以插入多個變數
傳回值:int是相應數的開始位置
4.從數組中隨機選出一個或多個元素
mixed array_rand(array input [,int num_req]);
第一個參數:input 數組
第二個參數:num_req 指定選擇多少個數
傳回值:mixed 是數組的下標,如果num_req>1,返回的就是下表的int數組
5 刪除數組的第一個元素
mixed array_shift(array $array)
第一個參數:array 必須是陣列變數 (引用傳遞);
傳回值:mixed 被刪的元素值
6 返回數組中所有值的總和
array中元素為數字,就返回數組中元素之和,如果有字串就轉化為整數。
number array_sum(array array);
第一個參數:array 必須是陣列變數;
傳回值:number
7 檢查數組中是否存在某個值
bool in_array(mixed needle ,array haystack [,bool strict])
needle 要尋找的變數
haystack 數組
strict 選擇性參數

作者“ITeamsky-楊波的技術空間”

http://www.bkjia.com/PHPjc/478667.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/478667.htmlTechArticle一 數組文法 定義數組 array() 可以用 array() 語言結構來建立一個 array。它接受任意數量用逗號分隔的 鍵(key) = 值(value) 對。 array( key = value...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.