亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

如何獲取PHP數(shù)組的鍵與值呢

時(shí)間:2023-03-31 15:27:41 PHP 我要投稿
  • 相關(guān)推薦

如何獲取PHP數(shù)組的鍵與值呢

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

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

  <?php

  $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; //注明:value不帶雙引號(hào)時(shí),其值只能是數(shù)字!荆。。∽⒁猓捍罄ㄌ(hào)兩邊只能是單引號(hào),不能是雙引號(hào)】

  帶雙引號(hào)時(shí),可為任意字符。如:{"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字符串,并轉(zhuǎn)換成數(shù)組

  ?php

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

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

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

  $file_path = $name.".txt";

  if(file_exists($file_path))

  {

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

  //$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 二維數(shù)組 知道keyvalue 怎么得到對(duì)應(yīng)的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";

  ?>

  獲取根據(jù)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);

  }

  ?>

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

  使用數(shù)組的過(guò)程中經(jīng)常要遍歷數(shù)組。通常需要遍歷數(shù)組并獲得各個(gè)鍵或值(或者同時(shí)獲得鍵和值),所以毫不奇怪,PHP為此提供了一些函數(shù)來(lái)滿足需求。許多函數(shù)能完成兩項(xiàng)任務(wù),不僅能獲取當(dāng)前指針位置的鍵或值,還能將指針移向下一個(gè)適當(dāng)?shù)奈恢谩?/p>

  獲取當(dāng)前數(shù)組鍵 key()

  key()函數(shù)返回input_array中當(dāng)前指針?biāo)谖恢玫逆I。其形式如下:

  mixed key(array array)

  下面的例子通過(guò)迭代處理數(shù)組并移動(dòng)指針來(lái)輸出$fruits數(shù)組的鍵:

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

  注意,每次調(diào)用key()時(shí)不會(huì)移動(dòng)指針。為此需要使用next()函數(shù),這個(gè)函數(shù)的唯一作用就是完成推進(jìn)指針的任務(wù)。

  獲取當(dāng)前數(shù)組值 current()

  current()函數(shù)返回?cái)?shù)組中當(dāng)前指針?biāo)谖恢玫臄?shù)組值。其形式如下:

  mixed current(array array)

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

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

  獲取當(dāng)前數(shù)組鍵和值 each()

  each()函數(shù)返回input_array的當(dāng)前鍵/值對(duì),并將指針推進(jìn)一個(gè)位置。其形式如下:

  array each(array array)

  返回的數(shù)組包含四個(gè)鍵,鍵0和key包含鍵名,而鍵1和value包含相應(yīng)的數(shù)據(jù)。如果執(zhí)行each()前指針位于數(shù)組末尾,則返回false。

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

  each() 經(jīng)常和 list() 結(jié)合使用來(lái)遍歷數(shù)組。本例與上例類似,不過(guò)循環(huán)輸出了整個(gè)數(shù)組:

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

  因?yàn)閷⒁粋(gè)數(shù)組賦值給另一個(gè)數(shù)組時(shí)會(huì)重置原來(lái)的數(shù)組指針,因此在上例中如果我們?cè)谘h(huán)內(nèi)部將 $fruits 賦給了另一個(gè)變量的話將會(huì)導(dǎo)致無(wú)限循環(huán)。

  這就完成了數(shù)組的遍歷。

【如何獲取PHP數(shù)組的鍵與值呢】相關(guān)文章:

關(guān)于PHP數(shù)組內(nèi)存耗用太多問(wèn)題的解決方法06-24

淺析通如何加強(qiáng)php的安全08-24

企業(yè)如何獲取核心競(jìng)爭(zhēng)力10-28

如何在cmd下面寫php代碼06-20

如何獲取一款真正的好游戲08-24

javascript創(chuàng)建數(shù)組之聯(lián)合數(shù)組的使用方法06-23

WinXP如何安裝Apache+MySQL+PHP環(huán)境06-21

如何用一鍵ghost備份系統(tǒng)06-06

如何配置PHP使之能同時(shí)支持GIF,PNG和JPEG08-26

如何提高英語(yǔ)閱讀能力呢06-19