首頁  >  文章  >  後端開發  >  PHP中的陣列處理函數使用範例總結

PHP中的陣列處理函數使用範例總結

WBOY
WBOY原創
2016-07-25 08:43:17819瀏覽
  1. #改變陣列鍵的大小寫
  2. $arr1=array("a"=>"Lamp","db "=>"database","LANGUAGE"=>"PHP");
  3. print_r(array_change_key_case($arr1,CASE_UPPER));
  4. echo "
    ";
  5. print_r(y_$change_key_array_$ arr1,CASE_LOWER));
  6. echo "

    ";
  7. #將一個陣列分割成多個第三個參數設定是否保留鍵
  8. $arr2=array ('a','b','c','d','e','f','g');
  9. print_r(array_chunk($arr2,2,true));
  10. echo "
    ";
  11. print_r(array_chunk($arr2,2,false));
  12. echo "

    ";
  13. #array array_diff_assoc ( array $array1 , array $array2 [, array $ ... ] ) 傳回一個數組,
  14. #該數組包括了所有在array1 中但是不在任何其它參數數組中的值
  15. #鍵不同也算
  16. $arr3=array('a'=>'green','b'=>'brown','c'=>'red');
  17. $arr4=array('a'=>'green ','yellow','red');
  18. print_r(array_diff_assoc($arr3,$arr4));
  19. echo "

    ";
  20. #array_diff ( array $array1 , array $array2 [, array $ ... ] )
  21. #傳回一個數組,該數組包括了所有在array1 中但是不在任何
  22. #其它參數數組中的值,鍵不同不算
  23. print_r(array_diff($arr3,$arr4));
  24. echo "

    ";
  25. #array_fill ( int $start_index , int $num , mixed $value ) #用value參數的值將一個陣列填入num 個項目,
  26. #鍵名由start_index 參數指定的開始。
  27. print_r(array_fill(-5,8,"banana"));
  28. echo "

    ";
  29. #array_flip ( array $trans )
  30. #array_flip ( array $trans )
  31. #傳回一個反轉後的array,例如trans 中的鍵名變成了值,
  32. #而trans 中的值成了鍵名。
  33. $arr5=array('a'=>'1',"b"=>"2","c","d","e");
  34. print_r(array_flip($arr5)) ;
  35. echo "

    ";
  36. #array_map ( callback $callback , array $arr1 [, array $... ] )
  37. #傳回一個數組,該數組包含了arr1 中的所有單元經過callback 作用過
  38. #之後的單元。 callback接受的參數數目應該和傳遞給 array_map()
  39. #函數的陣列數量一致。
  40. function cube($n){
  41. return $n*$n;
  42. }
  43. $arr6=array(1,2,3,4,5);
  44. print_r(array_map( "cube",$arr6));
  45. echo "

    ";
  46. #array_merge_recursive ( array $array1 [, array $... ] )
  47. #將一個或多個數組的單元合併起來,一個數組中的值附加在前一個數組
  48. #的後面。傳回作為結果的陣列。如果輸入的數組中有相同的字串鍵名,
  49. #則這些值會被合併到一個數組中去,這將遞歸下去,因此如果一個值本身
  50. #是一個數組,本函數將按照相應的條目把它合併為另一個數組。然而,如
  51. #果數組具有相同的數組鍵名,後一個值將不會覆蓋原來的值,而是附加到
  52. #後面。
  53. $arr7=array("color"=>array("favorite"=>"red"),5);
  54. $arr8=array(10,array("favorite"=>"yellow"," blue"));
  55. print_r(array_merge_recursive($arr7,$arr8));
  56. echo "

    ";
  57. #array_reduce ( array $input , callback $uncput , callback $unc [, int $initial ]
  58. #將回呼函數function 迭代地作用到input 數組中的每一個單元中,從而將數組
  59. #簡化為單一的值。將被當成是數組中的第
  60. #一個值來處理,或者如果數組為空的話就作為最終返回值。
  61. function rsum($v,$w){
  62. $v =$w;
  63. return $v;
  64. }
  65. function rmul($v,$w){
  66. $ v*=$w;
  67. return $v;
  68. }
  69. $a=array(1,2,3,4,5);
  70. $x=array();
  71. $ b=array_reduce($a,"rsum");
  72. $c=array_reduce($a,"rmul",10);
  73. $d=array_reduce($x,"rsum",1);
  74. echo $b."tt".$c."tt".$d."n";
  75. echo "

    ";
  76. #array_replace ( array &$array , array &$array1 [, array &$array2 [, array &$... ]] )
  77. #函數使用後面數組元素的值替換第一個array 數組的值。 🎜> #個數組同時也存在於第二個數組,它的值將被第二個數組中的值替換。 ,則會在第一個陣列中建立這個
  78. #元素。如果一個鍵僅存在於第一個數組,它將保持不變。如果傳遞了多個替換數
  79. #組,它們將按順序依次處理,後面的陣列將覆蓋先前的值。
  80. $base=array("orange","banana","apple","raspberry");
  81. $replacements=array(0=>"pineapple",4=>"cherry") ;
  82. $replacements2=array(0=>"grape");
  83. #print_r(array_replace($base,$replacements,$replacements2));
  84. #echo "

    " ;
  85. #array_splice ( array &$input , int $offset [, int $length [, array $ replacement ]] )
  86. #把input 數組中由offset 和length指定的單元去掉,如果提供了replacement
  87. # 參數,則以replacement數組中的單元取代。傳回一個包含有被移除單元的陣列
  88. # 。注意 input 中的數字鍵名不被保留。如果省略 length,則移除陣列中從
  89. # offset到結尾的所有部分。如果指定了 length並且為正值,則移除這麼多單元
  90. # 。如果指定了 length並且為負值,則移除從 offset 到數組末尾倒數 length
  91. # 為止中間所有的單元。小技巧:當給出了 replacement 時要移除從 offset到
  92. # 數組末尾所有單元時,用 count($input) 作為 length。
  93. $input=array("red","green","blue","yellow");
  94. array_splice($input,1,-1);
  95. print_r($input) ;
  96. echo "

    ";
  97. #key ( array &$array )
  98. #傳回陣列中目前單元的鍵名。
  99. $fruit=array("fruit1"=>"apple","fruit2"=>"orange","fruit3"=>"grape",
  100. "fruit4"=>"apple","fruit5" =>"apple");
  101. while($fruit_name=current($fruit)){
  102. if($fruit_name=='apple'){
  103. echo key($fruit)."
    ";
  104. }
  105. next($fruit);
  106. }
  107. echo "

    ";
  108. ?>
複製程式碼

PHP


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn