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

首頁 > 語言 > PHP > 正文

PHP中each與list用法分析

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

本文實例分析了PHP中each與list用法。分享給大家供大家參考,具體如下:

1.each的用法

先看API

array each ( array &$array )

api里是這么描述的:each — 返回數組中當前的鍵/值對并將數組指針向前移動一步

我們先來看看返回的數組是怎么樣的?

  1. <?php  
  2. $arr = array('你','若','安','好','便','是','晴','天'); 
  3. print_r(each($arr)); 
  4. print_r(each($arr)); 
  5. echo '<hr />'
  6. /* 
  7. 返回 
  8. Array 
  9. ( 
  10.   [1] => 你 
  11.   [value] => 你 
  12.   [0] => 0 
  13.   [key] => 0 
  14. ) 
  15. Array 
  16. ( 
  17.   [1] => 若 
  18.   [value] => 若 
  19.   [0] => 1 
  20.   [key] => 1 
  21. ) 
  22. */ 
  23. //執行相同的一段代碼,從‘你'到‘若',說明each是會每執行一次,游標向數組尾部移動一步 
  24. //0和Key存放的是鍵 
  25. //1和value存放的是值 
  26. //因此each滿足遍歷數組的,得到當前的鍵和值,以及每執行一次,向尾部移動一步游標 
  27. //因此循環數組也可以用each這么寫 
  28. reset($arr); 
  29. for(;$tmp=each($arr);){ 
  30.   echo $tmp[0],'~',$tmp[1],'<br />'
  31. /* 
  32. 返回 
  33. 0~你 
  34. 1~若 
  35. 2~安 
  36. 3~好 
  37. 4~便 
  38. 5~是 
  39. 6~晴 
  40. 7~天 
  41. */ 
  42. ?> 

2.list的用法

先看api是怎么說的

像 array() 一樣,這不是真正的函數,而是語言結構。list()用一步操作給一組變量進行賦值。  

來看一個例子:

  1. <?php  
  2. list($a,$b)=array(10,20); 
  3. echo $a,'~',$b,'<br />'
  4. //返回10~20 
  5. ?> 

沒錯可以給一組變量賦值,再來看另外一個例子:

  1. <?php  
  2. list($a,$b,,$c)=array(2=>10,3=>20,4=>30,1=>40); 
  3. echo $a,'~',$b,'~',$c,'<br />'
  4. //返回notice~40~20 
  5. //執行到$a的時候返回給我一個notice:說數組沒有0鍵 
  6. ?> 

按照一般的想法應該會返回:10~20~40

為什么會返回這個notice~40~20呢?

答:這涉及到list的運行機制,list是這么賦值的

首先:不要管右邊的數組,看List里面的變量,從左到右應該是  $a = arr[0]   $b=arr[1]  $c=arr[3]

然后:從右到左開始賦值,賦值的順序是 $c=arr[3]  $b=arr[1]  $a=arr[0]

所以$c=20  $b = 40  因為沒有arr[0],所以$a給了一個警告

3.用each和list實現數組的遍歷

  1. <?php  
  2. $arr = array('你','若','安','好','便','是','晴','天'); 
  3. for(;list($k,$v)=each($arr);){ 
  4.   echo $k,'~',$v,'<br />'
  5. /* 
  6. return: 
  7. 0~你 
  8. 1~若 
  9. 2~安 
  10. 3~好 
  11. 4~便 
  12. 5~是 
  13. 6~晴 
  14. 7~天 
  15. */ 
  16. ?>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 手游| 荣昌县| 夏津县| 巴里| 阳春市| 宁海县| 镇坪县| 安徽省| 九龙坡区| 赤城县| 绥棱县| 明光市| 闽清县| 广宗县| 陈巴尔虎旗| 玛沁县| 大方县| 云浮市| 崇礼县| 仙游县| 泾阳县| 杨浦区| 克拉玛依市| 红原县| 区。| 鄂温| 建昌县| 南陵县| 巩留县| 包头市| 鞍山市| 寻乌县| 蒲城县| 登封市| 上虞市| 岐山县| 邯郸市| 惠安县| 桐庐县| 惠安县| 胶州市|