PHP陣列簡介

2022-06-13 21:42:11 字數 3251 閱讀 5628

在php中可以使用array( [ index=>values ] )這個語言結構來宣告乙個陣列。陣列的元素可以是任意型別,也包括陣列,因此多維陣列也是支援的。

<?php

$fruits = array

( "numbers" => array(1, 2, 3, 4, 5, 6),

"holes" => array("first", 5 => "second", "third")

);?>

說明:語法"index=>values",用逗號分隔開,定義了索引和值,索引可以是字串或數字。如果省略索引,則會自動產生從0開始的整數索引。而且,如果定義了兩個一樣的索引,則後乙個會覆蓋前乙個。

1.array_pad( ) - 以指定長度將乙個值填充進陣列,語法為:

array

array_pad ( array

$array , int $size , $value )

函式簡介:array是需要被填充的原始陣列,size是填充後新陣列的長度,value是將被填充的值。這個函式會返回乙個填充後的陣列,陣列的長度為size,是在原陣列的基礎上填充若干個value得來的。

<?php

$input = array(12, 10, 9);

$result = array_pad($input, 5, 0);

//result is array(12, 10, 9, 0, 0)

$result = array_pad($input, -7, -1);

//result is array(-1, -1, -1, -1, 12, 10, 9)

$result = array_pad($input, 2, "noop");

//not padded

?>

說明:size的值很重要,如果size為正填充將在陣列的右側發生,如果size為負填充將在陣列的左側發生,如果size的絕對值小於或等於原陣列的長度則不做任何填充。另外,函式只是返回乙個副本陣列,原始陣列並不會被改變。

2.list() - 把陣列中的值賦給一組變數,可以在單次操作中就為一組變數賦值,例如

<?php

$info = array('coffee', 'brown', 'caffeine');

//列出所有變數

list($drink, $color, $power) = $info

;echo "$drink is $color and $power makes it special.\n";

//列出他們的其中乙個

list($drink, , $power) = $info

;echo "$drink has $power.\n";

//或者讓我們跳到僅第三個

list( , , $power) = $info

;echo "i need $power!\n";

//list() 不能對字串起作用

list($bar) = "abcde";

var_dump($bar); //

null

?>

3.count() - 計算陣列中的單元數目。語法:

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

函式簡介:array是要計算的陣列; mode是可選引數,若設為count_recursive(或),count()將遞迴地對陣列計數。對計算多維陣列的所有單元尤其有用。

<?php

'veggie' => array('carrot', 'collard', 'pea'));

//recursive count

echo

count($food, count_recursive); //

output 8

// normal count

echo

count($food); //

output 2

?>

4.range() - 建立乙個包含指定範圍單元的陣列,語法:

array

range ( $start ,$end [, number

$step = 1 ] )

函式簡介:start是序列的第乙個值,end則標識序列的結束,step設定生成序列的步長,應設為正數,預設為1.

<?php

//step 引數

// array(0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100)

foreach (range(0, 100, 10) as

$number

) //

字串行的使用

// array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i');

foreach (range('a', 'i') as

$letter

) ?>

5.foreach() - 該語法結構提供了遍歷陣列的簡單方式,有兩種語法:

foreach (array_expression as

$value

) statement

foreach (array_expression as

$key => $value

) statement

第一種格式遍歷給定的 array_expression 陣列。每次迴圈中,當前單元的值被賦給 $value 並且陣列內部的指標向前移一步。

第二種格式做同樣的事,除此之外,當前單元的鍵名也會在每次迴圈中被賦給變數 $key。

可以很容易地通過在 $value 之前加上 & 來修改陣列的元素。此方法將以引用賦值而不是拷貝乙個值。

<?php

$arr = array(1, 2, 3, 4);

foreach ($arr

as &$value

) //

$arr is now array(2, 4, 6, 8)

unset($value); //

最後取消掉引用

?>

注意:陣列最後乙個元素的 $value 引用在 foreach 迴圈之後仍會保留,建議使用unset()將其銷毀。

php 陣列 PHP 陣列

多維陣列 在多維陣列中,主陣列中的每個元素也是乙個陣列。在子陣列中的每個元素也可以是陣列,以此類推。例子 1 在本例中,我們建立了乙個帶有自動分配的 id 鍵的多維陣列 families array griffin array peter lois megan quagmire array glen...

awk陣列簡介

一 定義 在 awk 中,陣列是關聯陣列,它的特點是 1 陣列的下標可以是整數,也可以是負數甚至是字串 2 陣列的下標可以不連續。awk 的變數 ignorecase 的值不影響陣列下標。當 awk 建立乙個陣列的時候,如果沒有指定下標,預設已連續整數作為下標,起始值是 1.awk 的陣列是什麼高效...

awk陣列簡介

一 定義 在 awk 中,陣列是關聯陣列,它的特點是 1 陣列的下標可以是整數,也可以是負數甚至是字串 2 陣列的下標可以不連續。awk 的變數 ignorecase 的值不影響陣列下標。當 awk 建立乙個陣列的時候,如果沒有指定下標,預設已連續整數作為下標,起始值是 1.awk 的陣列是什麼高效...