加入收藏 | 设为首页 | 会员中心 | 我要投稿 财气旺网 - 财气网 (https://www.caiqiwang.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP数组foreach循环

发布时间:2022-11-16 19:01:37 所属栏目:PHP教程 来源:互联网
导读: PHP教程 - PHP数组foreach循环
foreach 是一种特殊的循环语句,只适用于数组和对象。
foreach 可以以两种方式使用。
语法获取值
使用foreach检索每个元素的值php循环,如下所示:
foreach

PHP教程 - PHP数组foreach循环

foreach 是一种特殊的循环语句,只适用于数组和对象。

foreach 可以以两种方式使用。

语法获取值

使用foreach检索每个元素的值php循环,如下所示:

foreach ( $array as $value ) { 
   // (do something with $value here) 
} 
// (rest of script here)   

获取键和值的语法

要使用foreach检索键和值,请使用以下语法:

foreach ( $array as $key =>  $value ) { 
   // (do something with $key and/or $value here 
} 
// (rest of script here)   

实施例1

使用foreach循环获取值


<?PHP
   $authors = array( "Java", "PHP", "CSS", "HTML" ); 
   foreach ( $authors as $val ) { 
       echo $val . "\n"; 
   }   
?>

上面的代码生成以下结果。

php循环table实现一行两列显示的方法_php循环_php 跳出while循环

实施例2

使用foreach循环通过关联数组


<?php //from   ww w  .  ja  va2s .  c o m
$myBook = array( "title" =>  "Learn PHP from www.w3cschool.cn", 
                "author" =>  "www.w3cschool.cn", 
                "pubYear" =>  2000 ); 
foreach ( $myBook as $key =>  $value ) { 
   echo "$key  \n"; 
   echo "$value \n"; 
} 
?>

上面的代码生成以下结果。

php 跳出while循环_php循环table实现一行两列显示的方法_php循环

PHP使用foreach更改数组值

当使用foreach时,循环中的值是值的副本。

如果你改变了值,你“不影响值在原始数组中。以下示例代码说明了这一点:


<?PHP/*www .j a  va  2  s. c  o  m*/
$authors = array( "Java", "PHP", "CSS", "HTML" ); 
// Displays "Java PHP Javascript HTML"; 
foreach ( $authors as $val ) { 
   if ( $val == "CSS" ) $val = "Javascript"; 
   echo $val . " "; 
} 
print_r ( $authors );   
?>

上面的代码生成以下结果。

php循环_php 跳出while循环_php循环table实现一行两列显示的方法

虽然$ val在循环中从“CSS"改为“Javascript"原始的$ authors数组保持不变。

怎么样

要修改数组值,我们需要得到foreach()返回一个引用数组中的值,而不是副本。

句法

要处理对数组元素的引用,请添加一个在foreach语句中的变量名之前的& (和号)符号:

foreach ( $array as & $value ) { 例子

这里的前面的例子改写为使用引用:


<?PHP
 $authors = array( "Java", "PHP", "CSS", "HTML" ); 
 foreach ( $authors as  & $val ) { 
   if ( $val == "CSS" ) $val = "Javascript"; 
   echo $val . " "; 
 } 
 unset( $val ); 
 print_r ( $authors );   
?>

上面的代码生成以下结果。

php 跳出while循环_php循环table实现一行两列显示的方法_php循环

这一次,第三个元素的值在$ authors数组在数组本身中从“CSS"更改为“Javascript"。

注意

unset($ val)确保 $ val 变量在循环已完成。

当循环结束时,$ val仍然保存对最后一个元素的引用。在我们的代码中更改$ val改变$ authors数组的最后一个元素。通过取消设置$ val,我们避免潜在的错误。

(编辑:财气旺网 - 财气网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!