<address id="zhpbl"></address>
<noframes id="zhpbl">
<address id="zhpbl"><form id="zhpbl"><th id="zhpbl"></th></form></address>

    <em id="zhpbl"></em>

      <address id="zhpbl"><th id="zhpbl"><progress id="zhpbl"></progress></th></address>
      更多精彩內容,歡迎關注:

      視頻號
      視頻號

      抖音
      抖音

      快手
      快手

      微博
      微博

      PHP遍歷數組的6種方式總結

      文檔

      PHP遍歷數組的6種方式總結

      數組的遍歷是PHP一個常見的編程任務,而數組又分為一維數組、二維數組和多維數組,下面這篇文章主要給大家介紹了關于PHP遍歷數組的6種方式,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下。
      推薦度:
      導讀數組的遍歷是PHP一個常見的編程任務,而數組又分為一維數組、二維數組和多維數組,下面這篇文章主要給大家介紹了關于PHP遍歷數組的6種方式,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下。

      目錄

      1、foreach

      2、array_map

      3、array_walk

      4、for

      5、each

      6、reset

      在PHP的日常操作中,數組是最常出現的結構,而我們幾乎每天都在處理數組相關的內容。那么問題來了,你一般怎么遍歷并處理數組。

      1、foreach

      很熟悉吧,是不是你的最愛?

      $arr?=?['a',?'b',?'c'];
      
      foreach?($arr?as?$key?=>?$value)?{
      ????$arr[$key]?=?$value?.?'_i';
      }
      
      print_r($arr);?//?['a_i',?'b_i',?'c_i'];
      2、array_map

      使用匿名函數的方式,處理數組里的每個元素。遍歷完成后返回一個新的數組

      $arr?=?['a',?'b',?'c'];
      
      $arr?=?array_map(function?($item)?{
      ????return?$item?.?'_i';
      },?$arr);
      
      print_r($arr);?//?['a_i',?'b_i',?'c_i'];

      你可以同時處理多個數組

      $arr_1?=?['a',?'b',?'c'];
      $arr_2?=?['你',?'好',?'嗎',?'原',?'罪'];
      //?$arr_n?=?[...];
      
      $arr?=?array_map(function?($item_1,?$item_2)?{
      ????return?$item_1?.?'_'?.?$item_2?.?'_i';
      },?$arr_1,?$arr_2);
      
      print_r($arr);?//?['a_你_i',?'b_好_i',?'c_嗎_i',?'_原_i',?'_罪_i']

      是的,遍歷的次數以最長的數組為準。

      遍歷3次之后,$arr_1 其實是完成了的,所以之后 $item_1 的值都是null3、array_walk

      以引用傳遞的形式遍歷你的數組,沒有返回值,而且只能處理一個數組。

      $arr?=?['a',?'b',?'c'];
      
      array_walk($arr,?function?(&$item)?{
      ????$item?=?$item?.?'_i';
      });
      
      print_r($arr);?//?['a_i',?'b_i',?'c_i'];

      注意到 &$item 了嗎,是的,多了個&,代表著你的形參是以引用傳遞接收數據的。你要做的就是想辦法改變這個參數。

      假如你處理的是二維數組,處理方式也是萬變不離其宗的。

      $arr?=?[
      ????['name'?=>?'a'],
      ????['name'?=>?'b'],
      ????['name'?=>?'c']
      ];
      
      array_walk($arr,?function?(&$item)?{
      ????$item['name']?=?$item['name']?.?'_i';
      });
      
      print_r($arr);?//?[['name'?=>?'a_i'],?['name'?=>?'b_i'],?['name'?=>?'c_i']];
      4、for

      這應該是超級通用的語法了

      $arr?=?['a',?'b',?'c'];
      
      for?($i?=?0;?$i?

      不推薦使用。它的效率比不上foreach。而且寫法上比foreach略繁瑣。

      5、each

      哈哈,這個函數在PHP7.2已經被廢棄了@deprecated,而且感覺特別古老的書寫方式。這種寫法的執行效率也不行,新手應該直接放棄。

      $arr?=?['a',?'b',?'c'];
      
      while?(list($key,?$value)?=?each($arr))?{
      ????$arr[$key]?=?$value?.?'_i';
      }
      
      print_r($arr);?//?['a_i',?'b_i',?'c_i'];
      6、reset

      準確的講并不止reset一個函數,需要組合多個內置函數,平常寫代碼基本是用不上的

      $arr?=?['a',?'b',?'c'];
      //?reset()?指針切換到頭部,其實默認就是指向開頭,可以忽略這句
      reset($arr);
      
      //?current()?獲取當前指針的元素值
      while?($value?=?current($arr))?{
      ????//?key()?獲取當前指針的元素下標
      ????$arr[key($arr)]?=?$value?.?'_i';
      ????//?next()?指針移到下一個
      ????next($arr);
      }
      
      print_r($arr);?//?['a_i',?'b_i',?'c_i'];
      總結

      到此這篇關于PHP遍歷數組的6種方式的文章就介紹到這了,希望大家以后多多支持好二三四!

      文檔

      PHP遍歷數組的6種方式總結

      數組的遍歷是PHP一個常見的編程任務,而數組又分為一維數組、二維數組和多維數組,下面這篇文章主要給大家介紹了關于PHP遍歷數組的6種方式,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下。
      推薦度:
      為你推薦
      資訊專欄
      熱門視頻
      相關推薦
      JS截取字符串的三種方法詳解 Python常用的正則表達式處理函數詳解 一文秒懂python正則表達式常用函數 python正則表達式語法學習筆記 帶動物的詩句 如何關閉360畫報 叮咚怎么搶菜 網易云一起聽怎么添加歌 adobe creative cloud是什么軟件 24歲是什么年華 季度怎么劃分 什么是防范區 大怨種是個啥 七月初七有哪些風俗 參照密接是什么意思 媚宅是什么 詠雪的詩句 傳統節日的詩句 描寫植物的詩句 描寫山的詩句有哪些 php兩種基本的輸出方及實例詳解 php生成唯一uid的解決方法詳解 PHP7中對十六進制字符串處理的問題詳解 PHP對接抖音開發平臺接口的詳細教程 php7安裝mysqli實例講解 php去掉一維數組的鍵值的實例方法 PHP中empty()和isset()的區別介紹 PHP實現JWT的Token登錄認證 php判斷時間戳是否為今天實例講解 PHP7 preg_replace出錯及解決辦法 關于杏花的詩句 帶飛的詩句 形容女人漂亮的詩句 春花的詩句 描寫初春的詩句 描寫燕子的詩句 帶有春字的詩句 春游的詩句 形容美女的詩句 有意境的詩句
      Top 少妇高潮太爽了在线视频