php申明空陣列 PHP中陣列定義的幾種方法

2021-10-22 22:13:40 字數 2682 閱讀 7796

array 陣列

php 中的陣列實際上是乙個有序對映。對映是一種把 values 關聯到 keys 的型別。此型別在很多方面做了優化,因此可以把它當成真正的陣列,或列表(向量),雜湊表(是對映的一種實現),字典,集合,棧,佇列以及更多可能性。由於陣列元素的值也可以是另乙個陣列,樹形結構和多維陣列也是允許的。

php定義陣列的常用方法

echo "

//定義陣列的多種方法

//方法一

var_dump($array);//列印陣列array

//方法二

$array='orange';

var_dump($array);//列印陣列array

//方法三

$array=;//這種不常見,但我覺得很簡潔,類似於$array=array();

var_dump($array);//列印陣列array

//定義索引陣列

//方法四

$array=array(

'orange'=>12,

var_dump($array);//列印陣列array

//方法五

var_dump($array);//列印陣列array

一般來說定義方法如下面幾種:

方法一:

$a=array(1,2,4,5,6);

$array=array('a','b','c');

$array='simon';

print_r($array);

執行結果如下所示。

array

[0]=>a

[1]=>b

[2]=>c

[3]=>simon

方法二:

$a=array(key1=>value1,key2=>value2,key3=>value3);

方法三:

$a[key1]=value1;

$a[key2]=value2;

方法四:通過中括號定義陣列

php 5.4版以後可以這麼寫,新增的陣列簡寫語法。

php 5.3版及以前的版本不接受這麼寫...

$data = [

'start_time' => '123',

'end_time' =>'456'

語法定義陣列 array()

可以用 array() 語言結構來新建乙個陣列。它接受任意數量用逗號分隔的 鍵(key) => 值(value)對。

array(  key =>  value

// 鍵(key)可是是乙個整數 integer 或字串 string

// 值(value)可以是任意型別的值

最後乙個陣列單元之後的逗號可以省略。通常用於單行陣列定義中,例如常用 array(1, 2) 而不是 array(1, 2, )。對多行陣列定義通常保留最後乙個逗號,這樣要新增乙個新單元時更方便。

自 5.4 起可以使用短陣列定義語法,用 替代 array()。

example #1 乙個簡單陣列

$array = array(

"foo" => "bar",

"bar" => "foo",

// 自 php 5.4 起

$array = [

"foo" => "bar",

"bar" => "foo",

key 可以是 integer 或者 string。value 可以是任意型別。

此外 key 會有如下的強制轉換:

包含有合法整型值的字串會被轉換為整型。例如鍵名 "8" 實際會被儲存為 8。但是 "08" 則不會強制轉換,因為其不是乙個合法的十進位制數值。

浮點數也會被轉換為整型,意味著其小數部分會被捨去。例如鍵名 8.7 實際會被儲存為 8。

布林值也會被轉換成整型。即鍵名 true 實際會被儲存為 1 而鍵名 false 會被儲存為 0。

null 會被轉換為空字串,即鍵名 null 實際會被儲存為 ""。

陣列和物件不能被用為鍵名。堅持這麼做會導致警告:illegal offset type。

如果在陣列定義中多個單元都使用了同乙個鍵名,則只使用了最後乙個,之前的都被覆蓋了。

example #2 型別強制與覆蓋示例

$array = array(

1 => "a",

"1" => "b",

1.5 => "c",

true => "d",

var_dump($array);

以上例程會輸出:

array(1) 在上例中效果相同)。

自 php 5.4 起可以用陣列間接引用函式或方法呼叫的結果。之前只能通過乙個臨時變數。

自 php 5.5 起可以用陣列間接引用乙個陣列原型。

example #7 陣列間接引用

function getarray() {

return array(1, 2, 3);

// on php 5.4

$secondelement = getarray()[1];

// previously

$tmp = getarray();

$secondelement = $tmp[1];

// or

list(, $secondelement) = getarray();

note:

試圖訪問乙個未定義的陣列鍵名與訪問任何未定義變數一樣:會導致 e_notice 級別錯誤資訊,其結果為 null。

php 陣列 PHP 陣列

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

php 陣列 PHP丨陣列

本期要點 什麼是陣列 鍵值對的概念 陣列的常用操作 增 刪 改 查 什麼是多維陣列 什麼是陣列 陣列就是一組資料的集合。如果說變數是乙個杯子的話,那麼,陣列就是一箱杯子。索引陣列與關聯陣列 arr1 1,2,3 arr2 0 1,1 2,2 3,var dump arr1,arr2 把上面的 在瀏覽...

PHP 解析PHP中的陣列

目錄結構 contents structure 建立陣列 刪除陣列 棧結構常用的陣列處理函式 在這篇文章中,筆者將會介紹php中陣列的使用,以及一些注意事項。之前筆者已經說過php是一門弱語言型別,因此php中的陣列使用也比較靈活。建立陣列的方式有好幾種,比如 格式 陣列變數名 索引值 資料內容 f...