国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php入門數(shù)組的使用到面試題

2024-09-04 11:46:36
字體:
來源:轉載
供稿:網友

數(shù)組在php中應用非常的多了在我們找工作時可能數(shù)組試題也多在學習中也就到比較多,這里給各位整理了大量的關于php數(shù)組的例子,有興趣的和小編來看這篇php入門數(shù)組的使用到面試題文章.

1.數(shù)組的概念

數(shù)組就是一個用來存儲一系列變量值的命名區(qū)域,每個數(shù)組元素有一個相關的索引,也成為關鍵字,它可以用來訪問元素.

PHP允許間隔性地使用數(shù)字或字符串作為數(shù)組的索引。

2.數(shù)字索引數(shù)組

2.1 數(shù)字索引數(shù)組的初始化

$products = array(‘Tires’,’Oil’,’Spark Plugs’);

如果需要將按升序排列的數(shù)字保存在一個數(shù)組中,可以使用range()函數(shù)自動創(chuàng)建這個數(shù)組。

創(chuàng)建一個1-10的數(shù)字數(shù)組:

$numbers = range(1,10);

可選的第三個參數(shù)允許設定值之間的步幅。

創(chuàng)建一個1-10之間的奇數(shù)數(shù)組:$odds = range(1,10,2);

2.2 訪問數(shù)組的內容

默認情況下,0元素是數(shù)組的第一個元素,使用$products[0]、$products[1]、$products[2],就可以使用數(shù)組$products的內容了.

除了訪問,數(shù)組的內容可以修改和添加:

$products[3] = ‘Fuses’;

像PHP的其他變量一樣,數(shù)組不需要預先初始化或創(chuàng)建。在第一次使用它們的時候,它們會自動創(chuàng)建。

如下代碼創(chuàng)建了一個與前面使用array()語句創(chuàng)建的$products數(shù)組相同的數(shù)組:

  1. $products[0] = ‘Tires’; 
  2. $products[1] = ‘Oil’; 
  3. $products[2] = ‘Spark Plugs’; 

數(shù)組的大小將根據所增加的元素多少動態(tài)地變化。

2.3 使用循環(huán)訪問數(shù)組

就是遍歷數(shù)組:

  1. foreach($products as $current){ 
  2.     echo $current.” “; 

以上代碼將依次保存$current變量中的每一個元素并且打印它們。

3.使用不同索引的數(shù)組

在上面的$products數(shù)組中,允許PHP為每個元素指定一個默認的索引。這就意味著,所添加的第一個元素為元素0,第二個元素為1等。PHP還支持關聯(lián)數(shù)組。

3.1 初始化關聯(lián)數(shù)組

如下所示的代碼可以創(chuàng)建一個以產品名稱為關鍵字、以價格作為值的關聯(lián)數(shù)組:

$prices = array(‘Tires’=>100,’Oil’=>10,’Spark Plugs’=>4);

3.2 使用循環(huán)語句

因為關聯(lián)數(shù)組的索引不是數(shù)字,因此無法使用for循環(huán)語句對數(shù)組進行操作。但是可以使用foreach循環(huán)或list()和each()結構。

當使用foreach循環(huán)語句對關聯(lián)數(shù)組進行操作時,可以按如下方式使用關鍵字:

  1. foreach($prices as $key => $value){ 
  2.     echo $key.” - ”.$value.”<br />”; 

如下所示的代碼將使用each()結構打印$prices數(shù)組的內容。

  1. while($element = each($prices)){ 
  2.     echo $element[‘key’]; 
  3.     echo “ - ”; 
  4.     echo $element[‘value’]; 
  5.     echo “<br />”; 
  6. //Vevb.com 

在這段代碼中,變量$element是一個數(shù)組。當調用each()時,它將返回一個帶有4個數(shù)值和4個指向數(shù)組位置的索引的數(shù)組。位置key和0包含了當前元素的關鍵字,而位置value和1包含了當前元素的值。

除了以上兩種方式,函數(shù)list()可以用來將一個數(shù)組分解為一系列的值。

  1. while(list($product,$price) = each($prices)){ 
  2.     echo “$product - $price<br />”; 
  3.      

這個看起來挺高大上,使用each()從$prices數(shù)組中取出當前元素,并且將它作為數(shù)組返回,然后再指向下一個元素。還使用list()將從each()返回的數(shù)組中所包含0、1兩個元素變?yōu)閮蓚€名為$product和$price的新變量。

三種輸出方式的結果相同.

注意,當使用each()函數(shù)時,數(shù)組將記錄當前元素。如果希望在相同的腳本中兩次使用該數(shù)組,就必須使用函數(shù)reset()將當前元素重新設置到數(shù)組開始處。要再次遍歷該數(shù)組,可以使用以下代碼:

  1. reset($prices); 
  2. while( list( $product$price ) = each( $prices )) 
  3. echo “$product - $price<br />”; 

以上代碼可以將當前元素重新設置到數(shù)組開始處,因此允許再次遍歷數(shù)組。

4.數(shù)組操作符

其中聯(lián)合操作符(+)嘗試將$b中的元素添加到$a的末尾。如果$b中的元素與$a中的一些元素具有相同的索引,它們將不會被添加。即$a中的元素將不會被覆蓋。

5.多維數(shù)組

5.1 二維數(shù)組

  1. $products = arrayarray( ‘TIR’, ‘Tires’, 100 ), 
  2. array( ‘OIL’, ‘Oil’, 10 ), 
  3. array( ‘SPK’, ‘Spark Plugs’, 4 )); 

可以使用雙重for循環(huán)來訪問每個元素:

  1. for($row = 0; $row < 3; $row++){ 
  2.     for($column = 0; $column < 3; $column++){ 
  3.         echo ‘|’.$products[$row][$column]; 
  4.     } 
  5.     echo ‘|<br />’; 
 

可以使用列名稱來代替數(shù)字,要保存產品的相同集合,可以使用如下代碼:

  1. $products = arrayarray( ‘Code’=>’TIR’, 
  2.         ‘Description’=>’Tires’, 
  3.         ‘Price’=>100 
  4.     ), 
  5.     array( ‘Code’=> ‘OIL’, 
  6.         ‘Description’=>’Oil’, 
  7.         ‘Price’=>10 
  8.     ), 
  9.     array(‘Code’=>’SPK’, 
  10.         ‘Decription’=>’Spark Plugs’, 
  11.         ‘Price’=>4 
  12.     ) 
  13.  ); 

如果希望檢索單個值,那么使用這個數(shù)組會容易得多。 使用描述性索引,不需要記住某個元素是存放在[x][y]位置的。使用一對有意義的行和列的名稱作為索引可以使你很容易找到所需的數(shù)據。

描述性索引的遍歷:

  1. for$row = 0; $row < 3; $row++ ){ 
  2.     while( list( $key$value ) =each( $products[$row] ) ){ 
  3.         echo “|$value”; 
  4.     } 
  5.     echo ‘|<br />’; 

5.2 三維數(shù)組

三維數(shù)組是一個包含了數(shù)組的數(shù)組的數(shù)組。

  1. $categories = array
  2.     array
  3.         array('CAR_TIR','Tires',100), 
  4.         array('CAR_OIL','Oil',10), 
  5.        array('CAR_SPK','Spark Plugs',4) 
  6.     ), 
  7.     array
  8.         array('VAN_TIR','Tires',120), 
  9.         array('VAN_OIL','Oil',12), 
  10.         array('VAN_SPK','Spark Plugs',5) 
  11.     ), 
  12.     array
  13.         array('TRK_TIR','Tires',150), 
  14.         array('TRK_OLL','Oil',15), 
  15.         array('TRK_SPK','Spark Plugs',6) 
  16.     ) 
  17. );  

遍歷:

  1. for($layer = 0;$layer < 3;$layer++){ 
  2.     echo "Layer $layer<br />"
  3.     for($row = 0;$row < 3;$row++){ 
  4.         for($column = 0;$column < 3;$column++){ 
  5.             echo '|'.$categories[$layer][$row][$column]; 
  6.         } 
  7.         echo '|<br />'
  8.     } 

根據創(chuàng)建多維數(shù)組的方法,可以創(chuàng)建四維、五維或六維數(shù)組,感興趣可以試下.

6.數(shù)組排序

6.1 使用sort()函數(shù)

sort()函數(shù)可以將數(shù)組按字母升序進行排序:

  1. $products = array('LiLei','HanMeimei','Wo'); 
  2.     sort($products); 
  3.     foreach ($products as $key) { 
  4.     echo $key." "

還可以按數(shù)字順序進行排序,需要注意的是,sort()函數(shù)是區(qū)分大小寫的,所有大寫字母都在小寫字母前面.

第二個參數(shù)可選,可指定排序類型:SORT_REGULAR(默認值)、SORT_NUMERIC或SORT_STRING。

6.2 使用asort()函數(shù)和ksort()函數(shù)對關聯(lián)數(shù)組排序

如果用關聯(lián)數(shù)組存儲各個項目和它們的價格,就需要用不同的排序函數(shù)使關鍵字和值在排序時仍然保持一致。

如下創(chuàng)建一個包含3個產品和價格的數(shù)組:

$prices = array('Tires'=>100,'Oil'=>10,'Spark Plugs'=>4);

函數(shù)asort()根據數(shù)組的每個元素值進行排序:

  1. asort($prices); 
  2. while(list($product,$price) = each($prices)){ 
  3.     echo "$product - $price<br />"

而函數(shù)ksort()則是根據數(shù)組的每個關鍵字進行排序:

  1. ksort($prices); 
  2. while(list($product,$price) = each($prices)){ 
  3.     echo "$product - $price<br />"

6.3 反向排序

即降序排序,與sort()、asort()、ksort()分別對應的是rsort()、arsort()、krsort()。

7.多維數(shù)組的排序

7.1 用戶定義排序

  1. $products = array
  2.     array'TIR''Tires', 100 ), 
  3.     array'OIL''Oil', 10 ), 
  4.     array'SPK''Spark Plugs', 4 ) 
  5. ); 

自定義排序需要用函數(shù)usort()告訴PHP如何比較各個元素,為此需要編寫自己的比較函數(shù)。

如下所示對訂單數(shù)組中的第二列按字母進行排序:

  1. function compare($x$y){ 
  2.     if($x[1] == $y[1]){ 
  3.         return 0; 
  4.     } 
  5.     else if($x[1] < $y[1]){ 
  6.         return -1; 
  7.     } 
  8.     else
  9.         return 1; 
  10.     } 
  11. //Vevb.com 
  12. usort($products,'compare'); 
  13. for($row = 0; $row < 3; $row++){ 
  14.     for($column = 0; $column < 3; $column++){ 
  15.         echo '|'.$products[$row][$column]; 
  16.     } 
  17.     echo '|<br />'
 

為了能夠被usort()函數(shù)使用,compare()函數(shù)必須比較$x和$y。如果$x等于$y,該函數(shù)必須返回0,如果$x小于$y,該函數(shù)必須返回負數(shù),大于則返回正數(shù)。最后一句調用了內置函數(shù)usort(),該函數(shù)使用的參數(shù)分別是希望保存的數(shù)組($products)和比較函數(shù)的名稱(compare())。

如果要讓數(shù)組按另一種順序存儲,只要編寫一個不同的比較函數(shù)。

usort()中的“u”代表“user”,因為這個函數(shù)要求傳入用戶定義的比較函數(shù)。

7.2 反向用戶排序

用戶定義的排序沒有反向變體,但可以對一個多維數(shù)組進行反向排序。由于用戶應該提供比較函數(shù),因此可以編寫一個能夠返回相反值的比較函數(shù):

  1. function reverse_compare($x$y){ 
  2.   if($x[2] == $y[2]){ 
  3.     return 0; 
  4.   } 
  5.   else if($x[1] < $y[1]){ 
  6.     return 1; 
  7.   } 
  8.   else
  9.     return -1; 
  10.   } 

8.對數(shù)組進行重新排序

shuffle()函數(shù):將數(shù)組各元素進行隨機排序。

array_reverse()函數(shù):給出一個原來數(shù)組的反向排序。

9.從文件載入數(shù)組

當前的訂單文件:

  1. <?php 
  2. //create short variable name 
  3. $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT']; 
  4. $orders= file("$DOCUMENT_ROOT/orders.txt"); 
  5. $number_of_orders = count($orders); 
  6. if ($number_of_orders == 0) { 
  7.   echo "<p><strong>No orders pending. 
  8.        Please try again later.</strong></p>"; 
  9. for ($i=0; $i<$number_of_orders$i++) { 
  10.   echo $orders[$i]."<br />"
  11. ?> 

還可以將訂單中的每個區(qū)段載入到單獨的數(shù)組元素中,從而可以分開處理每個區(qū)段或將它們更好地格式化。

用PHP分離、格式化顯示訂單內容:

  1. <?php 
  2.   //create short variable name 
  3.   $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT']; 
  4. ?> 
  5. <html> 
  6. <head> 
  7.   <title>Bob's Auto Parts - Customer Orders</title> 
  8. </head> 
  9. <body> 
  10. <h1>Bob's Auto Parts</h1> 
  11. <h2>Customer Orders</h2> 
  12. <?php 
  13.   //Read in the entire file. 
  14.   //Each order becomes an element in the array 
  15.   $orders= file("$DOCUMENT_ROOT/orders.txt"); 
  16.   // count the number of orders in the array 
  17.   $number_of_orders = count($orders); 
  18.   if ($number_of_orders == 0) { 
  19.     echo "<p><strong>No orders pending. 
  20.           Please try again later.</strong></p>"; 
  21.   } 
  22.   echo "<table border=/"1/">/n"
  23.   echo "<tr><th bgcolor=/"#CCCCFF/">Order Date</th> 
  24.             <th bgcolor=/"#CCCCFF/">Tires</th> 
  25.             <th bgcolor=/"#CCCCFF/">Oil</th> 
  26.             <th bgcolor=/"#CCCCFF/">Spark Plugs</th> 
  27.             <th bgcolor=/"#CCCCFF/">Total</th> 
  28.             <th bgcolor=/"#CCCCFF/">Address</th> 
  29.          <tr>"; 
  30.   for ($i=0; $i<$number_of_orders$i++) { 
  31.     //split up each line 
  32.     $line = explode("/t"$orders[$i]); 
  33.     // keep only the number of items ordered 
  34.     $line[1] = intval($line[1]); 
  35.     $line[2] = intval($line[2]); 
  36.     $line[3] = intval($line[3]); 
  37.     // output each order 
  38.     echo "<tr> 
  39.              <td>".$line[0]."</td> 
  40.              <td align=/"right/">".$line[1]."</td> 
  41.              <td align=/"right/">".$line[2]."</td> 
  42.              <td align=/"right/">".$line[3]."</td> 
  43.              <td align=/"right/">".$line[4]."</td> 
  44.              <td>".$line[5]."</td> 
  45.           </tr>"; 
  46.   } 
  47.   echo "</table>"
  48. ?> 
  49. </body> 
  50. </html> 
 

這里使用了explode()函數(shù)來分隔每行,這樣在開始打印前就可以再做一些處理與格式化。在上一篇中,保存數(shù)據的時候使用了制表符作為定界符,因此,將按如下方式調用:

explode(“/t”,$orders[$i]);

可以使用許多方法從字符串中提取數(shù)字。這里使用了intval()函數(shù),可以將一個字符串轉化成一個整數(shù)。

10.執(zhí)行其他數(shù)組操作

10.1 在數(shù)組中瀏覽:each()、current()、reset()、end()、next()、pos()和prev()

如果創(chuàng)建一個新數(shù)組,那么當前指針就將被初始化,并指向數(shù)組的第一個元素。

調用current($array_name)將返回第一個元素。

調用next()或each()將使指針前移一個元素。其中調用each($array_name)會在指針前移一個位置之前返回當前元素。而調用next($array_name)先將指針前移,然后再返回新的當前元素。

reset()函數(shù)將返回指向數(shù)組第一個元素的指針。

end()函數(shù)將返回指向數(shù)組最后一個元素的指針。

prec()函數(shù)將當前指針回移一個位置然后再返回新的當前元素??墒褂胑nd()和prev()進行反向遍歷:

  1. $array = array(7,8,9); 
  2. $value = end($array); 
  3. while($value){ 
  4.   echo "$value<br />"
  5.   $value = prev($array); 
 

10.2 對數(shù)組的每一個元素應用任何函數(shù):array_walk()

array_walk()函數(shù)可以以相同方式使用或者修改數(shù)組中的每一個元素。

bool array_walk(array arr,string func,[mixed userdata])

array_walk()的第一個參數(shù)是需要處理的數(shù)組,第二個參數(shù)是用戶自定義并且將作用于數(shù)組中每個元素的函數(shù)。

第三個參數(shù)可以作為一個參數(shù)傳遞給自己的函數(shù),可選。

10.3 統(tǒng)計數(shù)組元素的個數(shù):count()、sizeof()和array_count_values()

count()函數(shù)和sizeof()函數(shù)都可以返回數(shù)組元素的個數(shù)。

調用array_count_values($array)將會統(tǒng)計每個特定的值在數(shù)組$array中出現(xiàn)過的次數(shù)(數(shù)組的基數(shù)集)。這個函數(shù)將返回一個包含頻率表的關聯(lián)數(shù)組。該數(shù)組包括關鍵字以及對應的出現(xiàn)次數(shù)。

10.4 將數(shù)組轉換成標量變量:extract()

函數(shù)extract()的作用是通過一個數(shù)組創(chuàng)建一系列的標量變量,這些變量的名稱必須是數(shù)組中關鍵字的名稱,而變量值則是數(shù)組中的值。

extract()函數(shù)具有兩個可選參數(shù):extract_type和prefix。變量extract_type將告訴extract()函數(shù)將如何處理沖突。

兩個最常用的選項是EXTR_OVERWRITE(默認)和EXTR_PREFIX_ALL。

  1. $array = array('key1'=>'value1','key2'=>'value2','key3'=>'value3'); 
  2. extract($array,EXTR_PREFIX_ALL,'my_prefix'); 
  3. echo "$my_prefix_key1 $my_prefix_key2 $my_prefix_key3"

可能你已經注意到了,extract()的關鍵字必須是一個有效的變量名稱才行,以數(shù)字開始或包含空格的關鍵字將被跳過。

php常用數(shù)組函數(shù)小結

1.將數(shù)組的鍵名全部轉換成小寫和大寫的函數(shù)是什么? 答:array_change_key_case($array [,CASE_LOWER|CASE_UPPER])

2.創(chuàng)建一個數(shù)組,用一個數(shù)組的值作為其鍵名,另一個數(shù)組的值作為其值的函數(shù)是什么? 答: array  array_combine (  array  $keys  ,  array  $values  )

3.統(tǒng)計數(shù)組中所有的值出現(xiàn)的次數(shù)的函數(shù)是什么? 答: array  array_count_values (  array  $input  )

4.返回數(shù)組中部分的或所有的鍵名的函數(shù)是什么? 答:array array_key($array [,$search_value [,true|false]])

5.將回調函數(shù)作用到給定數(shù)組的單元上的函數(shù)是什么? 答: array  array_map (  callable  $callback  ,  array  $arr1  [,  array  $...  ] )

6.合并一個或多個數(shù)組的函數(shù)是什么? 答: array  array_merge (  array  $array1  [,  array  $...  ] )

7.將數(shù)組最后一個元素彈出的函數(shù)是什么? 答: mixed  array_pop (  array  &$array  )

8.將一個或多個單元壓入數(shù)組的末尾(入棧)的函數(shù)是什么? 答: int  array_push (  array  &$array  ,  mixed  $var  [,  mixed  $...  ] )

9.從數(shù)組中隨機取出一個或多個單元的函數(shù)是什么? 答: mixed  array_rand (  array  $input  [,  int  $num_req  = 1 ] )

10.返回一個單元順序相反的數(shù)組的函數(shù)是什么? 答: array  array_reverse (  array  $array  [,  bool  $preserve_keys  = false ] )

11.在數(shù)組中搜索給定的值,如果成功則返回相應的鍵名的函數(shù)是什么? 答: array_search (  mixed  $needle  ,  array  $haystack  [, $strict  = false ] )

12.將數(shù)組開頭的單元移出數(shù)組的函數(shù)是什么? 答: mixed  array_shift (  array  &$array  )

13.移除數(shù)組中重復的值的函數(shù)是什么? 答: array  array_unique (  array  $array  [,  int  $sort_flags  = SORT_STRING ] )

14.在數(shù)組開頭插入一個或多個單元的函數(shù)是什么? 答: int  array_unshift (  array  &$array  ,  mixed  $var  [,  mixed  $...  ] )

15.返回數(shù)組中所有的值的函數(shù)是什么? 答: array  array_values (  array  $input  )

16.對數(shù)組進行逆向排序并保持索引關系的函數(shù)是什么? 答: bool  arsort (  array  &$array  [,  int  $sort_flags  = SORT_REGULAR ] )

17.對數(shù)組進行正向排序并保持索引關系的函數(shù)是射門? 答: bool  asort (  array  &$array  [,  int  $sort_flags  = SORT_REGULAR ] )

18.返回數(shù)組中當前的鍵/值對并將數(shù)組指針向前移動一步的函數(shù)是什么? 答: array  each (  array  &$array  ),例如:while(list($key,$value)=each($array)){}

19.對數(shù)組按照鍵名逆向排序的函數(shù)是什么? 答: bool  krsort (  array  &$array  [,  int  $sort_flags  = SORT_REGULAR ] )

20.對數(shù)組按照鍵名正向排序的函數(shù)是什么? 答: bool  ksort (  array  &$array  [,  int  $sort_flags  = SORT_REGULAR ] )

21.  對數(shù)組逆向排序的函數(shù)是什么? 答: bool  rsort (  array  &$array  [,  int   = SORT_REGULAR ] )

22.對數(shù)組正向排序的函數(shù)是什么? 答: bool  sort (  array   [,  int   = SORT_REGULAR ] )

23.將數(shù)組打亂的函數(shù)是什么? 答: bool  shuffle (  array   )

24. count() 的別名函數(shù)是什么? 答:sizeof()

非數(shù)組,也非NULL,通通返回1

  1. <?php 
  2. $arr=array('春','夏','秋','冬'); 
  3. echo count($arr);//4 
  4. echo '<br/>'
  5. $str='false'
  6. echo count($str);//1 
  7. echo '<br/>'
  8. $res=null; 
  9. echo count($res);//0 
  10. echo "<br/>"
  11. $arr=array('春','夏','秋','冬',array('a','b','c')); 
  12. echo count($arr),'<br/>';//5 
  13. echo count($arr,1),'<br/>';//第2個參數(shù)為1時,代表遞歸的來計算數(shù)組的單元個數(shù) 
  14. $arr=array('春','夏','秋','冬',array('a',array('b','c'))); 
  15. echo count($arr,1),'<br/>'
  16. ?> 

range函數(shù)

作用:建立一個包含指定范圍單元的數(shù)組

返回值:返回的數(shù)組中從 start 到 limit 的單元,包括它們本身。

  1. <?php 
  2. $arr=range(0,20); 
  3. foreach($arr as $v){ 
  4.  echo $v.'<br/>'
  5. $arr=range(0,20,2); 
  6. foreach($arr as $k=>$v){ 
  7.   echo $k.'###'.$v.'<br/>'
  8. ?> 

array_flip函數(shù) array array_flip ( array $trans )

作用:交換鍵值

參數(shù):array $trans 要交換鍵/值對的數(shù)組。

返回值:成功時返回交換后的數(shù)組,如果失敗返回 NULL。鍵值對調后,出現(xiàn)2個相同的鍵,后面的會覆蓋前面的鍵

  1. <?php 
  2. $arr=array('a'=>1,'b'=>2,'c'=>3); 
  3. print_r($arr);//Array ( [0] => a [1] => b [2] => c )  
  4. print_r(array_flip($arr));//Array ( [a] => 0 [b] => 1 [c] => 2 )  
  5. ?> 

array_sum函數(shù) number array_sum ( array $array )

作用:計算數(shù)組中所有值的和,將數(shù)組中的所有值的和以整數(shù)或浮點數(shù)的結果返回。

參數(shù):array 輸入的數(shù)組。

返回值:所有值的和以整數(shù)或浮點數(shù)的結果返回

  1. <?php 
  2. $arr=range(1,100); 
  3. print_r($arr); 
  4. echo array_sum($arr); 
  5. ?> 

shuffle函數(shù) bool shuffle ( array &$array )

作用: 將數(shù)組打亂

參數(shù):array 待操作的數(shù)組

返回值:成功時返回 TRUE, 或者在失敗時返回 FALSE。該函數(shù)是引用傳值

  1. <?php 
  2. $arr=range(1,100); 
  3. print_r($arr); 
  4. echo array_sum($arr); 
  5. if(shuffle($arr)){ 
  6. echo '打亂成功'
  7. print_r($arr);// 
  8.    } 
  9. ?> 

array_reverse函數(shù) array array_reverse ( array $array [, bool $preserve_keys = false ] )

作用:接受數(shù)組 array 作為輸入并返回一個單元為相反順序的新數(shù)組。

參數(shù):array 輸入的數(shù)組。preserve_keys 如果設置為 TRUE 會保留數(shù)字的鍵。 非數(shù)字的鍵則不受這個設置的影響,總是會被保留。

返回值:返回反轉后的數(shù)組。

  1. <?php 
  2. $arr = array('a'=>'春','b'=>'夏','c'=>'秋','d'=>'冬');  
  3. print_r($arr); //Array ( [a] => 春 [b] => 夏 [c] => 秋 [d] => 冬 ) 
  4. print_r(array_reverse($arr)); //Array ( [d] => 冬 [c] => 秋 [b] => 夏 [a] => 春 ) 
  5. $arr = array('春','夏','秋','冬');  
  6. print_r($arr);  
  7. print_r(array_reverse($arr));  
  8. print_r(array_reverse($arr,true)); 
  9. ?> 

array_push函數(shù) int array_push ( array &$array , mixed $var [, mixed $... ] )

作用:將一個或多個單元壓入數(shù)組的末尾(入棧)

參數(shù):array 輸入的數(shù)組。 var 要壓入的值。

返回值:返回處理之后數(shù)組的元素個數(shù)。

  1. <?php 
  2. $stack = array("orange""banana"); 
  3. array_push($stack"apple""raspberry"); 
  4. print_r($stack); 
  5. ?> 

array_pop函數(shù) mixed array_pop ( array &$array )

作用:將數(shù)組最后一個單元彈出(出棧)

參數(shù):array 需要做出棧的數(shù)組。

返回值:返回 array 的最后一個值。如果 array 是空(如果不是一個數(shù)組),將會返回 NULL 。

  1. <?php 
  2. $stack = array("orange""banana""apple""raspberry"); 
  3. $fruit = array_pop($stack); 
  4. print_r($stack); 
  5. ?> 

函數(shù) mixed array_shift ( array &$array )

作用:將數(shù)組開頭的單元移出數(shù)組

參數(shù):array 輸入的數(shù)組。

返回值:返回移出的值,如果 array 為 空或不是一個數(shù)組則返回 NULL。

  1. <?php 
  2. $stack = array("orange""banana""apple""raspberry"); 
  3. $fruit = array_shift($stack); 
  4. print_r($stack); 
  5. ?> 

array_unshift函數(shù) int array_unshift ( array &$array , mixed $var [, mixed $... ] )

作用:在數(shù)組開頭插入一個或多個單元

參數(shù):array 輸入的數(shù)組。 var 開頭插入的變量。

返回值:返回 array 數(shù)組新的單元數(shù)目。

  1. <?php 
  2. $queue = array("orange""banana"); 
  3. array_unshift($queue"apple""raspberry"); 
  4. print_r($queue); 
  5. ?> 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 五华县| 吴忠市| 法库县| 昭苏县| 武穴市| 六枝特区| 宽城| 库尔勒市| 茂名市| 清水河县| 衡南县| 托克逊县| 宣恩县| 城固县| 临清市| 台北市| 宁德市| 广元市| 个旧市| 逊克县| 乐陵市| 新郑市| 常熟市| 龙岩市| 天祝| 红原县| 海阳市| 邻水| 调兵山市| 清原| 莱阳市| 宁蒗| 阜康市| 梧州市| 红桥区| 砀山县| 湘西| 简阳市| 南城县| 昆山市| 宾川县|