广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php有没有foreach语法
  • 760
分享到

php有没有foreach语法

phpforeach 2020-08-19 18:08:01 760人浏览 猪猪侠
摘要

本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。php有没有foreach语法php有foreach语法。foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数

本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。

php有没有foreach语法

phpforeach语法。

foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。

有两种语法:

foreach (iterable_expression as $value)
    statement
foreach (iterable_expression as $key => $value)
    statement

第一种格式遍历给定的 iterable_expression 迭代器。每次循环中,当前单元的值被赋给 $value。

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

注意 foreach 不会修改类似 current() 和 key() 函数所使用的数组内部指针。

还能够自定义遍历对象。

可以很容易地通过在 $value 之前加上 & 来修改数组的元素。此方法将以引用赋值而不是拷贝一个值。

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// 现在 $arr 是 array(2, 4, 6, 8)
unset($value); // 最后取消掉引用
?>

注意:

数组最后一个元素的 $value 引用在 foreach 循环之后仍会保留。建议使用 unset() 来将其销毁。 否则你会遇到下面的情况:

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// 现在 $arr 是 array(2, 4, 6, 8)
// 未使用 unset($value) 时,$value 仍然引用到最后一项 $arr[3]
foreach ($arr as $key => $value) {
    // $arr[3] 会被 $arr 的每一项值更新掉…
    echo "{$key} => {$value} ";
    print_r($arr);
}
// 直到最终倒数第二个值被复制到最后一个值
// output:
// 0 => 2 Array ( [0] => 2, [1] => 4, [2] => 6, [3] => 2 )
// 1 => 4 Array ( [0] => 2, [1] => 4, [2] => 6, [3] => 4 )
// 2 => 6 Array ( [0] => 2, [1] => 4, [2] => 6, [3] => 6 )
// 3 => 6 Array ( [0] => 2, [1] => 4, [2] => 6, [3] => 6 )
?>

可以通过引用来遍历数组常量的值:

<?php
foreach (array(1, 2, 3, 4) as &$value) {
    $value = $value * 2;
}
?>

注意:

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

示例:

<?php

$a = array(1, 2, 3, 17);
foreach ($a as $v) {
   echo "Current value of \$a: $v.\n";
}

$a = array(1, 2, 3, 17);
$i = 0; 
foreach ($a as $v) {
    echo "\$a[$i] => $v.\n";
    $i++;
}

$a = array(
    "one" => 1,
    "two" => 2,
    "three" => 3,
    "seventeen" => 17
);
foreach ($a as $k => $v) {
    echo "\$a[$k] => $v.\n";
}

$a = array();
$a[0][0] = "a";
$a[0][1] = "b";
$a[1][0] = "y";
$a[1][1] = "z";
foreach ($a as $v1) {
    foreach ($v1 as $v2) {
        echo "$v2\n";
    }
}

foreach (array(1, 2, 3, 4, 5) as $v) {
    echo "$v\n";
}
?>

--结束END--

本文标题: php有没有foreach语法

本文链接: https://www.lsjlt.com/news/1050.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php有没有foreach语法
    本文操作环境:Windows7系统、PHP7.1版、Dell G3电脑。php有没有foreach语法php有foreach语法。foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数...
    99+
    2020-08-19
    php foreach
  • php有没有foreach
    PHP是一种广泛应用的编程语言,被用于开发许多不同类型的Web应用。在PHP中,有许多的循环结构可供使用,其中最常用的也是最基础的循环结构,就是foreach循环。首先,我们来看一下foreach循环的基本语法:foreach ($arra...
    99+
    2023-05-14
    php
  • php有foreach吗
    本文小编为大家详细介绍“php有foreach吗”,内容详细,步骤清晰,细节处理妥当,希望这篇“php有foreach吗”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。首先,我们来看一下foreach循环的基本语法...
    99+
    2023-07-05
  • php中有没有goto语句
    在现代的编程语言中,goto语句通常被认为是一种很不好的实现方式,它们可能会导致难以维护的代码,并且可以造成代码缺陷。因此,一些现代编程语言精心设计来避免goto的使用,PHP也不例外。实际上,PHP并没有goto语句。在PHP中,跳转到标...
    99+
    2023-05-14
    php
  • php的foreach语法怎么用
    本文小编为大家详细介绍“php的foreach语法怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“php的foreach语法怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。php中是有foreach语法...
    99+
    2023-06-26
  • es6语法有没有块级作用域
    这篇文章主要讲解了“es6语法有没有块级作用域”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“es6语法有没有块级作用域”吧! e...
    99+
    2022-10-19
  • php有没有文件引用方法
    本篇内容主要讲解“php有没有文件引用方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php有没有文件引用方法”吧!有4种文件引用方法:1、用include语句,语法“include '...
    99+
    2023-06-30
  • go语言有没有gc
    这篇文章主要介绍“go语言有没有gc”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“go语言有没有gc”文章能帮助大家解决问题。go语言有gc。GC是指垃圾回收,是一种自动内存管理的机制;go语言支持...
    99+
    2023-07-04
  • go语言有没有while
    go语言中没有while关键字,不支持while和do-while循环结构。从功能上讲,但凡while语句能做的事情,for语句也可以实现,因此Go语言统一了for语句和while语句。且Go的开发团队有比较严重的洁癖,while并不是一个...
    99+
    2023-05-14
    go语言
  • foreach-php中有什么遍历
    这篇文章给大家分享的是有关foreach-php中有什么遍历的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。    1.foreach的格式foreach (array_express...
    99+
    2023-06-13
  • PHP有没有自然语言处理的能力?
    PHP是一种流行的编程语言,广泛应用于Web开发、服务器端编程等领域。在这些领域中,自然语言处理(Natural Language Processing,简称NLP)是一项非常重要的技术,它可以帮助我们处理文本信息,从而实现一些有用的功能,...
    99+
    2023-06-29
    自然语言处理 numpy 接口
  • php有没有操作时间的方法
    这篇“php有没有操作时间的方法”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php有没有操作时间的方法”文章吧。php有操...
    99+
    2023-06-30
  • go语言有没有反射
    这篇文章主要讲解了“go语言有没有反射”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“go语言有没有反射”吧!go语言有反射。Go语言提供了一种机制在运行时更新和检查变量的值、调用变量的方法和...
    99+
    2023-07-04
  • css3有没有判断语句
    这篇文章主要介绍“css3有没有判断语句”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“css3有没有判断语句”文章能帮助大家解决问题。 ...
    99+
    2022-10-19
  • go语言有没有缩进
    go语言有缩进。在go语言中,缩进直接使用gofmt工具格式化即可(gofmt使用tab进行缩进);gofmt工具会以标准样式的缩进和垂直对齐方式对源代码进行格式化,甚至必要情况下注释也会重新格式化。本教程操作环境:windows7系统、G...
    99+
    2023-05-14
    go语言 Golang Go
  • Linux C语言有没有bit
    本文小编为大家详细介绍“Linux C语言有没有bit”,内容详细,步骤清晰,细节处理妥当,希望这篇“Linux C语言有没有bit”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。Linux C语言有bit;在单片...
    99+
    2023-07-05
  • go语言有没有分号
    本篇内容主要讲解“go语言有没有分号”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“go语言有没有分号”吧!go语言中没有分号,go方法是由一条一条语句构成,每个语句后面是不需要分号的;go又称G...
    99+
    2023-07-05
  • php 有没有反射
    本文操作环境:Windows7系统、PHP7.1版、Dell G3电脑。php 有没有反射PHP 具有完整的反射 API,增加了内省类、接口、函数、方法和扩展的能力。 此外,反射 API 提供了方法来取出函数、类和方法中的文档注释。请注意部...
    99+
    2020-08-08
    php 反射
  • php7有没有php oci8
    这篇“php7有没有php oci8”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php7有没有php oci8”文章吧。p...
    99+
    2023-07-04
  • java中forEach循环里面遇到return怎么没有整体退出forEach循环?
    在Java中,使用return语句在forEach循环中无法直接退出整个forEach循环。这是因为forEach方法内部的迭代操作是由函数式接口 Consumer 的实现来执行的,并且该接口没有提供直接控制循环流程的机制。 当在forEa...
    99+
    2023-09-29
    java 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作