the internal array pointer

The foreach construct provides an easy way to iterate over arrays. foreach works only on arrays and objects, and will issue an error when you try to use it on a variable with a different data type or an uninitialized variable. There are two syntaxes: foreach (array_expression as $value)     statement

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

The first form loops over the array given by array_expression. On each iteration, the value of the current element is assigned to $value and the internal array pointer is advanced by one

(so on the next iteration, you‘ll be looking at the next element).

The second form will additionally assign the current element‘s key to the $key variable on each iteration. It is possible to customize object iteration.

Note: In PHP 5, when foreach first starts executing, the internal array pointer is automatically reset to the first element of the array. This means that you do not need to call reset() before a foreach loop.

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

第一种格式遍历(E loop over )给定的 array_expression 数组。 每次循环中(E on each iteration),当前(E current)单元的值被赋给(E is assiged) $value 并且数组内部的指针(E the inernal array pointer)向前移一步(因此下一次循环中将会得到下一个单元)。 当 foreach 开始执行时,数组内部的指针会自动指向第一个单元。 这意味着不需要在 foreach 循环之前调用 reset()。

 1 <?php
 2 $arr = array(1,2,3,4);
 3 var_dump($value);//null
 4 foreach($arr as &$value){
 5     $value = $value*2;
 6 }
 7 var_dump($value);//8
 8 var_dump($arr);// 2 4 6 8
 9
10 $arrb = array(1,2,3,4);
11 var_dump($valueb);//null
12 foreach($arrb as $valueb){
13     $valueb = $valueb*2;
14 }
15 var_dump($valueb);//8
16 var_dump($arrb);//1 2 3 4 
时间: 2024-10-13 19:40:18

the internal array pointer的相关文章

C++, array, pointer

0. 1. syntax int foo[5]; // an array of int, an empty array int foo[5] = {16, 2, 77, 40, 123}; // an array of int with initilization int* ptr[5]; // an array of pointer, each pointer points to an int double *p; // a pointer pointing to a double vecto

php之foreach遍历数组

foreach (PHP 4, PHP 5) The foreach construct provides an easy way to iterate over arrays. foreach works only on arrays and objects, and will issue an error when you try to use it on a variable with a different data type or an uninitialized variable.

php的23中设计模式

原文地址 https://my.oschina.net/botkenni/blog/1603660 PhpDesignPatterns [PHP 中的设计模式] 一. Introduction[介绍] 设计模式:提供了一种广泛的可重用的方式来解决我们日常编程中常常遇见的问题.设计模式并不一定就是一个类库或者第三方框架,它们更多的表现为一种思想并且广泛地应用在系统中.它们也表现为一种模式或者模板,可以在多个不同的场景下用于解决问题.设计模式可以用于加速开发,并且将很多大的想法或者设计以一种简单地方

c/c++指针总结[pointer summary]

[本文链接] http://www.cnblogs.com/hellogiser/p/pointer-summary.html 1.指针注意事项 (1). 指针类型字符串不容许修改 char *str1="abcd"; char str2[]="abcd";的区别.指针类型的字符串一般不允许修改,如:str1[0]='c':这样的语句会导致运行时错误. C++ Code 123456789101112131415   void test_string() {    

程序设计实习MOOC / 继承和派生——编程作业 第五周程序填空题1

描述 写一个MyString 类,使得下面程序的输出结果是: 1. abcd-efgh-abcd- 2. abcd- 3. 4. abcd-efgh- 5. efgh- 6. c 7. abcd- 8. ijAl- 9. ijAl-mnop 10. qrst-abcd- 11. abcd-qrst-abcd- uvw xyz about big me take abcd qrst-abcd- 要 求:MyString类必须是从C++的标准类string类派生而来.提示1:如果将程序中所有 "My

RSA前端加密解密

<html> <head> <title>JavaScript RSA Encryption</title> <meta charset="UTF-8"> <script src="js/jquery-1.11.3.min.js"></script> <script src="js/jsencrypt.min.js"></script> &

Objective-C高级编程:iOS多线程及内存管理(第一章翻译)

写在翻译之前:当初看到这本书的时候,感觉深入浅出讲得比较到位,但是在市面上看到的翻译版本翻译的却没有原著的精髓和味道.所以产生了自己将其翻译一下给初学者一些便利的想法.所以才有了这个系列的第一章的翻译.目前剩余的部分依然在翻译过程中,估计不久之后就可以陆续地发出了. 因为本人的水平或者用词问题,本翻译难免有不周详或不正确之处.如果有人看到还望指出,我一定会尽力地修改那些不正确的部分,让更多的人可以看到更优质的资料. Chapter 1 Life before Automatic Referenc

PatentTips - Optimizing Write Combining Performance

BACKGROUND OF THE INVENTION The use of a cache memory with a processor facilitates the reduction of memory access time. The fundamental idea of cache organization is that by keeping the most frequently accessed instructions and data in the fast cache

PHP标准库 SPL

PHP SPL笔记 这几天,我在学习PHP语言中的SPL. 这个东西应该属于PHP中的高级内容,看上去很复杂,但是非常有用,所以我做了长篇笔记.不然记不住,以后要用的时候,还是要从头学起. 由于这是供自己参考的笔记,不是教程,所以写得比较简单,没有多解释.但是我想,如果你是一个熟练的PHP5程序员,应该足以看懂下面的材料,而且会发现它很有用.现在除此之外,网上根本没有任何深入的SPL中文介绍. ================ PHP SPL笔记 目录 第一部分 简介 1. 什么是SPL? 2.