• <sub id="h4knl"><ol id="h4knl"></ol></sub>
    <sup id="h4knl"></sup>
      <sub id="h4knl"></sub>

      <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
      1. <strong id="h4knl"></strong>

      2. 如何獲取PHP數組的鍵與值呢

        時間:2024-10-25 23:05:53 PHP 我要投稿
        • 相關推薦

        如何獲取PHP數組的鍵與值呢

          array_keys($array);//獲取數組(字典)的所有鍵值,返回一個鍵值數組。

          array_values($array)://獲取數組的所有value值,飯回一個數組。

          <?php

          $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; //注明:value不帶雙引號時,其值只能是數字。【!!!注意:大括號兩邊只能是單引號,不能是雙引號】

          帶雙引號時,可為任意字符。如:{"id":"1","location":"漢字","oxygen":"3.33","negative":"23.2","humidity":"22","temp":"2.33","pm":"6"}

          //print_r("

        ");

          //var_dump(json_decode($json));

          //var_dump(json_decode($json, true));

          //print_r(json_decode($json));

          //print_r(json_decode($json, true));

          //print_r("");

          $arr1=json_decode($json,true);

          print_r($arr1);

          print_r(array_keys($arr1));

          echo array_keys($arr1)[1];

          echo array_values($arr1)[2];

          while(list($key, $value) = each($arr1))

          {

          echo "$key === $value
        ";

          }

          ?>

          ////從同名txt文本中讀取json字符串,并轉換成數組

          ?php

          //header("Content-Type: text/html; charset=gb2312");

          header("content-Type: text/html; charset=utf-8");//字符編碼設置

          $name = basename(__file__,".php");

          $file_path = $name.".txt";

          if(file_exists($file_path))

          {

          $str = file_get_contents($file_path);//將整個文件內容讀入到一個字符串中

          //$str = str_replace(" ","
        ",$str);

          $str = str_replace(" ","",$str);

          //echo $name;

          //echo $file_path;

          echo $str;

          }

          //去掉bom頭

          function rmBOM($string)

          {

          if (substr($string, 0,3) == pack('CCC',0xef,0xbb,0xbf))

          {

          $string = substr($string, 3);

          }

          return $string;

          }

          //echo rmBOM($str);

          $str=rmBOM($str);

          $str2arr = json_decode($str,true);

          print_r($str2arr);

          ?>

          <?php

          //php 二維數組 知道keyvalue 怎么得到對應的value

          function getValueByKey($arr, $key) {

          foreach($arr as $k => $v) {

          if ($k == $key) {

          return $v;

          }

          }

          return '';

          }

          $arr = array('a' => 1, 'b' => 2);

          $result = getValueByKey($arr, 'b');

          echo "$result";

          ?>

          獲取根據value值獲取key

          <?php

          $array = array(

          'fruit1' => 'apple',

          'fruit2' => 'orange',

          'fruit3' => 'grape',

          'fruit4' => 'apple',

          'fruit5' => 'apple');

          // this cycle echoes all associative array

          // key where value equals "apple"

          while ($fruit_name = current($array)) {

          if ($fruit_name == 'apple') {

          echo key($array).'
        ';

          }

          next($array);

          }

          ?>

          本文實例講述了PHP獲取數組的鍵與值方法。分享給大家供大家參考。具體如下:

          使用數組的過程中經常要遍歷數組。通常需要遍歷數組并獲得各個鍵或值(或者同時獲得鍵和值),所以毫不奇怪,PHP為此提供了一些函數來滿足需求。許多函數能完成兩項任務,不僅能獲取當前指針位置的鍵或值,還能將指針移向下一個適當的位置。

          獲取當前數組鍵 key()

          key()函數返回input_array中當前指針所在位置的鍵。其形式如下:

          mixed key(array array)

          下面的例子通過迭代處理數組并移動指針來輸出$fruits數組的鍵:

        1
        2
        3
        4
        5
        6
        7
        $fruits = array("apple"=>"red", "banana"=>"yellow");
        while ($key = key($fruits)) {
           printf("%s <br />", $key);
           next($fruits);
        }
        // apple 
        // banana

          注意,每次調用key()時不會移動指針。為此需要使用next()函數,這個函數的唯一作用就是完成推進指針的任務。

          獲取當前數組值 current()

          current()函數返回數組中當前指針所在位置的數組值。其形式如下:

          mixed current(array array)

          下面修改前面的例子,這一次我們要獲取數組值:

        1
        2
        3
        4
        5
        6
        7
        $fruits = array("apple"=>"red", "banana"=>"yellow");
        while ($fruit = current($fruits)) {
           printf("%s <br />", $fruit);
           next($fruits);
        }
        // red 
        // yellow

          獲取當前數組鍵和值 each()

          each()函數返回input_array的當前鍵/值對,并將指針推進一個位置。其形式如下:

          array each(array array)

          返回的數組包含四個鍵,鍵0和key包含鍵名,而鍵1和value包含相應的數據。如果執行each()前指針位于數組末尾,則返回false。

        1
        2
        3
        $fruits = array("apple", "banana", "orange", "pear");
        print_r ( each($fruits) );
        // Array ( [1] => apple [value] => apple [0] => 0 [key] => 0 )

          each() 經常和 list() 結合使用來遍歷數組。本例與上例類似,不過循環輸出了整個數組:

        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        $fruits = array("apple", "banana", "orange", "pear");
        reset($fruits);
        while (list($key, $val) = each($fruits))
        {
           echo "$key => $val<br />";
        }
        // 0 => apple
        // 1 => banana
        // 2 => orange
        // 3 => pear

          因為將一個數組賦值給另一個數組時會重置原來的數組指針,因此在上例中如果我們在循環內部將 $fruits 賦給了另一個變量的話將會導致無限循環。

          這就完成了數組的遍歷。

        《&.doc》
        将本文的Word文档下载到电脑,方便收藏和打印
        推荐度:
        点击下载文档

        【如何獲取PHP數組的鍵與值呢】相關文章:

        php數組函數序列之array-combine() - 數組合并函數的代碼03-31

        PHP獲取今天開始和結束的時間戳03-18

        如何學好PHP知識03-30

        新手如何學習PHP語言03-29

        淺析通如何加強php的安全03-06

        php如何過濾危險html代碼03-30

        如何利用ajax獲取博文列表03-18

        如何在cmd下面寫php代碼01-22

        jQuery(js)如何獲取文字寬度(顯示長度)03-29

        在线咨询
        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码
      3. <sub id="h4knl"><ol id="h4knl"></ol></sub>
        <sup id="h4knl"></sup>
          <sub id="h4knl"></sub>

          <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
          1. <strong id="h4knl"></strong>

          2. 日韩欧美国产第一页 | 亚洲成在人天堂在线 | 亚洲欧美日韩国产一区动漫 | 中文字幕亚洲欧美日韩专区 | 在线观看日本高清区 | 亚洲欧洲日本精品中文a∨ 亚洲免费在线观看 |

            如何獲取PHP數組的鍵與值呢

              array_keys($array);//獲取數組(字典)的所有鍵值,返回一個鍵值數組。

              array_values($array)://獲取數組的所有value值,飯回一個數組。

              <?php

              $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; //注明:value不帶雙引號時,其值只能是數字。【!!!注意:大括號兩邊只能是單引號,不能是雙引號】

              帶雙引號時,可為任意字符。如:{"id":"1","location":"漢字","oxygen":"3.33","negative":"23.2","humidity":"22","temp":"2.33","pm":"6"}

              //print_r("

            ");

              //var_dump(json_decode($json));

              //var_dump(json_decode($json, true));

              //print_r(json_decode($json));

              //print_r(json_decode($json, true));

              //print_r("");

              $arr1=json_decode($json,true);

              print_r($arr1);

              print_r(array_keys($arr1));

              echo array_keys($arr1)[1];

              echo array_values($arr1)[2];

              while(list($key, $value) = each($arr1))

              {

              echo "$key === $value
            ";

              }

              ?>

              ////從同名txt文本中讀取json字符串,并轉換成數組

              ?php

              //header("Content-Type: text/html; charset=gb2312");

              header("content-Type: text/html; charset=utf-8");//字符編碼設置

              $name = basename(__file__,".php");

              $file_path = $name.".txt";

              if(file_exists($file_path))

              {

              $str = file_get_contents($file_path);//將整個文件內容讀入到一個字符串中

              //$str = str_replace(" ","
            ",$str);

              $str = str_replace(" ","",$str);

              //echo $name;

              //echo $file_path;

              echo $str;

              }

              //去掉bom頭

              function rmBOM($string)

              {

              if (substr($string, 0,3) == pack('CCC',0xef,0xbb,0xbf))

              {

              $string = substr($string, 3);

              }

              return $string;

              }

              //echo rmBOM($str);

              $str=rmBOM($str);

              $str2arr = json_decode($str,true);

              print_r($str2arr);

              ?>

              <?php

              //php 二維數組 知道keyvalue 怎么得到對應的value

              function getValueByKey($arr, $key) {

              foreach($arr as $k => $v) {

              if ($k == $key) {

              return $v;

              }

              }

              return '';

              }

              $arr = array('a' => 1, 'b' => 2);

              $result = getValueByKey($arr, 'b');

              echo "$result";

              ?>

              獲取根據value值獲取key

              <?php

              $array = array(

              'fruit1' => 'apple',

              'fruit2' => 'orange',

              'fruit3' => 'grape',

              'fruit4' => 'apple',

              'fruit5' => 'apple');

              // this cycle echoes all associative array

              // key where value equals "apple"

              while ($fruit_name = current($array)) {

              if ($fruit_name == 'apple') {

              echo key($array).'
            ';

              }

              next($array);

              }

              ?>

              本文實例講述了PHP獲取數組的鍵與值方法。分享給大家供大家參考。具體如下:

              使用數組的過程中經常要遍歷數組。通常需要遍歷數組并獲得各個鍵或值(或者同時獲得鍵和值),所以毫不奇怪,PHP為此提供了一些函數來滿足需求。許多函數能完成兩項任務,不僅能獲取當前指針位置的鍵或值,還能將指針移向下一個適當的位置。

              獲取當前數組鍵 key()

              key()函數返回input_array中當前指針所在位置的鍵。其形式如下:

              mixed key(array array)

              下面的例子通過迭代處理數組并移動指針來輸出$fruits數組的鍵:

            1
            2
            3
            4
            5
            6
            7
            $fruits = array("apple"=>"red", "banana"=>"yellow");
            while ($key = key($fruits)) {
               printf("%s <br />", $key);
               next($fruits);
            }
            // apple 
            // banana

              注意,每次調用key()時不會移動指針。為此需要使用next()函數,這個函數的唯一作用就是完成推進指針的任務。

              獲取當前數組值 current()

              current()函數返回數組中當前指針所在位置的數組值。其形式如下:

              mixed current(array array)

              下面修改前面的例子,這一次我們要獲取數組值:

            1
            2
            3
            4
            5
            6
            7
            $fruits = array("apple"=>"red", "banana"=>"yellow");
            while ($fruit = current($fruits)) {
               printf("%s <br />", $fruit);
               next($fruits);
            }
            // red 
            // yellow

              獲取當前數組鍵和值 each()

              each()函數返回input_array的當前鍵/值對,并將指針推進一個位置。其形式如下:

              array each(array array)

              返回的數組包含四個鍵,鍵0和key包含鍵名,而鍵1和value包含相應的數據。如果執行each()前指針位于數組末尾,則返回false。

            1
            2
            3
            $fruits = array("apple", "banana", "orange", "pear");
            print_r ( each($fruits) );
            // Array ( [1] => apple [value] => apple [0] => 0 [key] => 0 )

              each() 經常和 list() 結合使用來遍歷數組。本例與上例類似,不過循環輸出了整個數組:

            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            $fruits = array("apple", "banana", "orange", "pear");
            reset($fruits);
            while (list($key, $val) = each($fruits))
            {
               echo "$key => $val<br />";
            }
            // 0 => apple
            // 1 => banana
            // 2 => orange
            // 3 => pear

              因為將一個數組賦值給另一個數組時會重置原來的數組指針,因此在上例中如果我們在循環內部將 $fruits 賦給了另一個變量的話將會導致無限循環。

              這就完成了數組的遍歷。