php函数foreach()

foreach 结构,和 Perl 以及其他语言很像。这只是一种遍历数组简便方法。foreach 仅能用于数组,当试图将其用于其它数据类型或者一个未初始化的变量时会产生错误。有两种语法,第二种比较次要,但却是第一种的有用的扩展。

  第一种:
foreach (array_expression as $value)
    statement

  第二种:
foreach (array_expression as $key => $value)
    statement

  第一种格式遍历给定的 array_expression 数组。每次循环中,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。

  第二种格式做同样的事,只除了当前单元的键名也会在每次循环中被赋给变量 $key。

  自PHP 5 起,还可以遍历对象。

  注:当 foreach 开始执行时,数组内部的指针会自动指向第一个单元。这意味着不需要在 foreach 循环之前调用 reset()。

  注:除非数组是被引用,foreach 所操作的是指定数组的一个拷贝,而不是该数组本身。因此数组指针不会被 each() 结构改变,对返回的数组单元的修改也不会影响原数组。不过原数组的内部指针的确在处理数组的过程中向前移动了。假定 foreach 循环运行到结束,原数组的内部指针将指向数组的结尾。

  自 PHP 5 起,可以很容易地通过在 $value 之前加上 & 来修改数组的单元。此方法将以引用赋值而不是拷贝一个值:
<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)
?>

此方法仅在被遍历的数组可以被引用时才可用(例如是个变量)。

注:foreach 不支持用“@”来抑制错误信息的能力

时间: 2024-11-02 20:02:47

php函数foreach()的相关文章

smarty内置函数foreach用法实例_php实例

本文实例讲述了smarty内置函数foreach用法.分享给大家供大家参考.具体如下: 输出文件:index.php 复制代码 代码如下: <?php require_once('libs/Smarty.class.php'); $smarty = new Smarty(); $smarty->setTemplateDir($_SERVER['DOCUMENT_ROOT']."/php/templates/"); $smarty->setCompileDir($_SE

PHP中的函数-- foreach()的用法详解_php技巧

PHP 4 引入了 foreach 结构,和 Perl 以及其他语言很像.这只是一种遍历数组简便方法.foreach 仅能用于数组,当试图将其用于其它数据类型或者一个未初始化的变量时会产生错误.有两种语法,第二种比较次要但却是第一种的有用的扩展. 复制代码 代码如下: foreach (array_expression as $value)    statementforeach (array_expression as $key => $value)    statement 第一种格式遍历给

PHP特定函数foreach遍历一二维数组

foreach有两种用法: 一.   foreach(arr_name as $value)     {              statement;      } 解析:arr_name是要遍历的数组名.每次循环,arr_name数组当前元素的值都被赋给$value,而且数组内部下标也要下移一个,也就是说下次循环得到的将是下一个元素 二. foreach(arr_name as $key => $value)    {               statement;     }  解析:与

JavaScript forEach()遍历函数使用及介绍_javascript技巧

forEach()函数从头到尾把数组遍历一遍.有三个参数分别是:数组元素,元素的索引,数组本身(如果是一个参数就是数组元素,也就是数组的值. var data=[1,2,3,4,5,6]; var sum=0; data.forEach(function(v){//其中的v就是数组的值 123456 sum+=v;}) document.write(sum+"<br>");//打印出来是21 data.forEach(function(o,p,q){//分别对应:数组元素,

【 MAKEFILE 编程基础之四】详解MAKEFILE 函数的语法与使用!

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/gcc-makefile/771.html 使用函数: 在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能.make所支持的函数也不算很多,不过已经足够我们的操作了.函数调用后,函数的返回值可以当做变量来使用. 一.函数的调用语法 函数调用,很像变量的使用,也是以"$"来标识的,其语法如下: $

Makefile所有内嵌函数

一.文本处理函数以下是GNU make内嵌的文本(字符串)处理函数.1       $(subst FROM,TO,TEXT) 函数名称:字符串替换函数-subst. 函数功能:把字串"TEXT"中的"FROM"字符替换为"TO". 返回值:替换后的新字符串. 示例: $(subst ee,EE,feet on the street) 替换"feet on the street"中的"ee"为"E

详解Makefile 函数的语法与使用

使用函数: 在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能.make所支持的函数也不算很多,不过已经足够我们的操作了.函数调用后,函数的返回值可以当做变量来使用. 一.函数的调用语法 函数调用,很像变量的使用,也是以"$"来标识的,其语法如下: $(<function> <arguments> ) 或是 ${<function> <arguments>} 这里,<function>就是

php 文件目录操作函数

mkdir();函数 php创建文件夹和文件 ///创建文件夹  代码如下 复制代码 function createdir($dir) { if(file_exists($dir) && is_dir($dir)){//如果存在这个文件并且这个文件是个目录就不动作 } else{    mkdir($dir,0777);//否则就创造这个目录 } } file_exists();函数 file_exists -- 检查文件或目录是否存在  代码如下 复制代码 <?php $filen

makefile函数集锦【转】

转自:http://blog.csdn.net/turkeyzhou/article/details/8612841 Makefile  常用函数表一.字符串处理函数1.$(subst FROM,TO,TEXT)函数名称:字符串替换函数-subst.函数功能:把字串"TEXT"中的"FROM"字符替换为"TO".返回值:替换后的新字符串.2.$(patsubst PATTERN,REPLACEMENT,TEXT)函数名称:模式替换函数-patsu