iT邦幫忙

DAY 4
4

取得PHP認證之路系列 第 4

取得PHP認證之路 - 陣列

  • 分享至 

  • xImage
  •  

陣列

一、陣列的key與宣告:
key可為數字或者字串,陣列可用array()結構或者直接指定變數為陣列兩種方式產生。
數字為key的陣列:
可以不指定key值,PHP會從0開始為key,下個元素加入陣列所用key值會用目前的最大key加一。
字串為key的陣列:
也可以稱為關聯性陣列,通常從資料庫讀出的資料放到陣列中用此種方式能夠直覺的處理。
如果在此用數字(數字前不補0)當作字串用作為key,PHP會視為數字key來處理。
以下為範例:

	$a = array(1,2,3); //以數字為key的陣列,用array()產生。若不指定key值則從0開始
	$b = array(0=>1,1=>2,2=>3);//跟上面一模一樣的陣列,但有指定key值
	$c = array(2=>"a",1=>"b"); //數字key值未必要照順序來宣告
	$d = array(1,2,1=>3,); //這陣列只剩兩個key-value對,0=>1與1=>3,最後多個逗點也是可以的
	$e = array("a"=>1,"b"=>2); //這就是字串為key的陣列,要一個個指定key-value對
	$f = array("a"=>1,"b"=>2,1,2); //當然可以數字key與字串key混合使用
	$g[] = "a"; //這是另一種陣列宣告方式,PHP自動將$g轉為陣列資料型態
	$h[3] = "a"; //這樣等於 $h=array(3=>"a");
	$i["2"] = "b"; //也能這樣用
	$i[] = "c"; //陣列內容會是"2"=>"b",3=>"c"

二、列印出陣列結構:
可以用print_r()或var_dump()、var_export()列印陣列內容。
print_r():配合<pre></pre>可以產生易讀的陣列內容,我通常都用這個來除錯。

	echo "";
	print_r($f);
	echo "";

var_dump():可以呈現陣列中元素的資料型態與長度,當然可以配合<pre>產生好讀的畫面。

	echo "";
	var_dump($f);
	echo "";

var_export():可將陣列產生出PHP的標準語法,例如產生後存入檔案中,可再取出使用(也可用serialize())


上一篇
取得PHP認證之路 - function
下一篇
取得PHP認證之路 - 陣列 part2
系列文
取得PHP認證之路5
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
fillano
iT邦超人 1 級 ‧ 2009-10-17 06:55:56

http://tw.php.net/manual/en/ref.array.php
陣列操作相關函數。
http://tw.php.net/manual/en/class.arrayobject.php
用物件方式操作陣列。不過它定義的method,尤其是操作陣列的部份沒有return ArrayObject,讓操作可以更Fluent...
最近在JaceJu部落格的連結中看到:http://justafewlines.com/2009/10/whats-wrong-with-php-closures/中有提到不錯的做法。(雖然這一篇在講closure)

我要留言

立即登入留言