PHP強大的數組____PHP

來源:互聯網
上載者:User

 這段時間偷懶放鬆去老~啊哦~來回憶下關於數組在PHP中的使用。C語言或者C++一類語言,數組雖然很強大,但指標卻是個老大難問題。而在PHP中基本不存在這種情況,數組可以理解為一個有向圖,初學者能較短時間理解並運用它(我也是初學者~)。

PHP中數組分為兩種,一是索引數組,二是關聯陣列。數組形式均為array(key1=>value1,key2=>value2,·····)key稱為索引值,value則是數組元素。索引數組就是索引值為整數值,而關聯陣列則為字串,這就是兩者不同之處。只需記住若是任意某一數組元素的索引值為字串,則該數組為關聯陣列。在PHP中多維陣列中二維常見,其他維數類比即可。

二維數組的數組元素仍為數組

array(key1=>array1(key1=>value1,),key2=>array2(key2=>value2),·····)

 

關於數組的輸出,全部輸出可以用Var_dump(),也可以用for或者foreach迴圈。不過需要注意前者只能用於索引數組,而後者則不存在這種情況。for的使用同C,而foreach可以說說。

一種是輸出數組元素:

foreach (array() as $value) {   echo $value;   echo "<br/>";}

另一種則是輸出索引值和數組元素:

foreach ( array() as $key=>$value) {    echo $key."=>".$value.'<br/>';}

關於foreah的執行個體:

<?php  $arr=array(1, 3, "for"=>4, 5, 6, 7, 8,9,10=>"aa","bb", "cc");/*for($i=0; $i<count($arr); $i++){echo "\$arr[".$i."]=".$arr[$i]."<br>";}*//*當 foreach 開始執行時,數組內部的指標會自動指向第一個單元。此外注意foreach 所操作的是指定數組的一個拷貝,而不是該數組本身*//*foreach ($arr as $value) {var_dump ($value);echo '<hr/>';*/foreach ($arr as $key =>$value) {echo $key.'=>'.$value;echo '<hr/>';}?>


我們還可以用list()和each()對數組進行遍曆。

<?php/**********************************************************************//*****array  each ( array array)******//*****返回 array 數組中當前指標位置的鍵/值對並向前移動數組指標。******//*****索引值對被返回為四個單元的數組,鍵名為 0,1,key 和 value。/*****單元 0 和 key 包含有數組單元的鍵名,1 和 value 包含有資料。******//*****如果內部指標越過了數組的末端,則 each() 返回 FALSE。 ******//*****each() 經常和list( ) 結合使用來遍曆數組。******//*****void list ( mixed ...)******//*****它不是真正的函數,而是語言結構。list() 用一步操作給一組變數進行賦值。******/ /*****注: list() 僅能用於數字索引的數組並假定數字索引從0開始。******//*****在執行 each() 之後,數組指標將停留在數組中的下一個單元或者當碰到數組******//*****結尾時停留在最後一個單元。如果要再用 each 遍曆數組,必須使用reset( )。******//*****************************************************************/$fruit = array('a'=>'apple','b'=>'banana','c'=>'cranberry');reset($fruit);//reset() 函數把數組的內部指標指向第一個元素,並返回這個元素的值。若失敗,則返回 FALSE。while(list($a,$b)=each($fruit)) {echo "$a => $b\n";}?><?php$fruit = array('a'=>'apple','b'=>'banana','c'=>'cranberry');reset($fruit);//reset() 函數把數組的內部指標指向第一個元素,並返回這個元素的值。若失敗,則返回 FALSE。while($temp=each($fruit)) {//echo $temp[0]."===>".$temp[1]."<br>";       echo $temp['key']."===>".$temp['value']."<br>";  }echo '<hr/>';?>

懶得寫了。就附加原始碼,希望對大家有點參考。

聯繫我們

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