Maison > développement back-end > tutoriel php > Maîtrisez les quatre façons de parcourir les tableaux

Maîtrisez les quatre façons de parcourir les tableaux

PHP中文网
Libérer: 2023-03-10 16:18:02
original
3603 Les gens l'ont consulté

[(concentrer) les quatre méthodes de circulation des tableaux à travers le tableau] <br> 1, utiliser pour parcourir le tableau de arrays conut($arr) utilisé pour compter le nombre d'éléments du tableau. <br> La boucle for ne peut être utilisée que pour parcourir des tableaux d'index purs ! ! ! ! <br> S'il existe un tableau associatif, le nombre total des deux tableaux sera compté lors des statistiques de comptage, et une boucle for sera utilisée pour parcourir le tableau mixte, provoquant la sortie du tableau bornes! ! <br> par exemple : <br> $arr = array(1,2,3,5,6,7);<br> $num = count($arr); <br> //count est mieux placé à l'extérieur pour, afin que la fonction ne puisse être exécutée qu'une seule fois echo "Le nombre d'éléments du tableau {$num}
";<br> pour($i=0;$i<$num;$i++){
echo "{$i}= =>
2. La boucle forEach parcourt le tableau
foreach peut parcourir n'importe quel type de tableau ! ! !
par exemple :


Par exemple Parse le tableau suivant :

 $arr = array(1,2,3,"one"=>4,5,6,7);   foreach($arr as $value){
  echo "{$item}<br>";
 } foreach($arr as $key => $value){
  echo "{$key}==>{$item}<br>";
 }</p>
<p><br></p>
<p><br><span style="font-family: 仿宋; font-size: 18px">   使用list()、each()、while()遍历数组</span><br><span style="font-family: 仿宋; font-size: 18px">   <span style="color: #cc99ff">(重点)list():用于将数组的每一个值,赋值给list函数的每一个参数。(list函数的参数,必须小于等于数组的元素个数);</span></span><br><span style="font-family: 仿宋; font-size: 18px">   eg:list($a,$b,$c)=[1,2,3];-->$a=1; $b=2; $c=3;</span><br><span style="font-family: 仿宋; font-size: 18px">   注意:① list()在解析数组时,只解析索引数组;</span><br><span style="font-family: 仿宋; font-size: 18px">        ② list可以通过空参数,选择性的解析数组的值;</span><br><span style="font-family: 仿宋; font-size: 18px">          list($a,,$b)=[1,2,3];-->$a=1;  $b=3;</span><br><span style="font-family: 仿宋; font-size: 18px">   <span style="color: #cc99ff">(重点)each():用于返回数组当前指针所在位的键值对!并将指针后移一位;</span></span><br><span style="color: #cc99ff"><span style="font-family: 仿宋; font-size: 18px">       返回值:如果指针有下一位,返回一个数组。包含一个索引数组(0-键,1-值)和一个关联数组("key"-键,"value"-值);如果指针没有下一位,返回false;</span><span style="font-family: 仿宋; font-size: 18px">         </span></span><br><span style="font-family: 仿宋; font-size: 18px">   eg: </span><br><span style="font-family: 仿宋; font-size: 18px">    ① each($arr) 返回数组或false;</span><br><span style="font-family: 仿宋; font-size: 18px">    ② 把数组或false赋值给$a;</span><br><span style="font-family: 仿宋; font-size: 18px">    ③ while判断$a如果是数组,继续执行下一次;</span><br><span style="font-family: 仿宋; font-size: 18px">             如果$a是false,终止循环</span><br><span style="font-family: 仿宋; font-size: 18px">  while($a = each($arr)){</span><br><span style="font-family: 仿宋; font-size: 18px">  echo "{$a[0]}-->{$a[1]}<br>";  </span><br><span style="font-family: 仿宋; font-size: 18px">  echo "{$a['key']}-->{$a['value']}<br>";  </span><br><span style="font-family: 仿宋; font-size: 18px">  }</span><span style="font-family: 仿宋; font-size: 18px"> </span><br><span style="font-family: 仿宋; font-size: 18px"> <strong><span style="color: #339966"> <span style="color: #ff0000"> 3.使用list()/each()/while()配合遍历数组</span></span></strong></span></p>
<div class="cnblogs_code"><pre class="brush:php;toolbar:false"> while(list($key,$value) = each($arr)){
   echo "{$key}-->{$value}<br>";  
      }
     reset($arr);
Copier après la connexion

     !!!!数组使用each()遍历完一遍后,指针使用处于最后一位的下一位;即再用each(),始终返回false;<br>     如果还需使用,需用reset($arr);函数,重置数组指针;<br>  eg:

 $arr = array(1,2,3,"one"=>4,5,6,7);   foreach($arr as $value){
  echo "{$item}<br>";
 } foreach($arr as $key => $value){
  echo "{$key}==>{$item}<br>";
 }
Copier après la connexion

 

 (=
Copier après la connexion

 

 while(list($key,$value) = each($arr)){
  echo "{$key}-->{$value}<br>";  
  }
  reset($arr);  while(list($key,$value) = each($arr)){
  echo "{$key}-->{$value}<br>";  
  }
Copier après la connexion

<br>  4、 使用数组指针遍历数组<br>   ① next:将数组指针,后移一位。并返回后一位的值;没有返回false<br>   ② prev:将数组指针,前移一位。并返回前一位的值;没有返回false<br>   ③ end:  将数组指针,移至最后一位,返回最后一位的值;空数组返回false<br>   ④ reset:将数组指针,恢复到第一位。并返回第一位的值;空数组返回false<br>   ⑤ key: 返回当前指针所在位的键;<br>   ⑥ current:返回当前指针所在位的值;

$arr = [,,,,=>((!
Copier après la connexion
do{
   echo key($arr);
   echo "--";
   echo current($arr);
  echo "<br>";
  }while(next($arr));
  reset($arr);
Copier après la connexion
<br>
Copier après la connexion

  牛刀小试:<br>   1.遍历数组:$subject1 = array("Linux","PHP","MySQL","HTML","CSS","JQuery")<br>  方式一:for循环遍历

for($i=0;$i<count($subject1);$i++){
     echo $subject1[$i]."<br/>";
   }
Copier après la connexion

  方式二:使用list()/each()/while()配合遍历数组

 .
(list($key,$value)=
Copier après la connexion

方式三:forEach循环遍历

foreach ($subject1 as $key => $value) {
   echo "{$key}-->{$value}<br/>";
  }
Copier après la connexion

 方式四:指针

 do{<br>   echo   key($subject1)."=>".current($subject1)."
";<br>  }while(next($subject1));<br>  echo "
";
Copier après la connexion

2.使用reset(),end(),prev(),next(),key(),current();与do…while组合倒着输出数组中的值:<br>  $subject2 = array(“Linux”,”PHP”,”MySQL”,”HTML”,”CSS”,”JQuery”)

 $subject2 = array("Linux","PHP","MySQL","HTML","CSS","JQuery");
    end($subject2);   do{
   echo key($subject2)."=>".current($subject2)."<br>";
  }while(prev($subject2));
Copier après la connexion

 

 

     <br> 

感觉不错就试试吧!!!

  <br> 

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal