PHP foreach循环中使用&是否会影响同个函数中其他的foreach 1C

在同一个函数中前面使用过foreach循环并用了图片说明

接下去继续写一个foreach循环 使用不同的$val图片说明

打印结果为正常图片说明

最后一项循环结果正常;如果改变代码中$val为$v如图图片说明

则结果不正常,最后一个不循环图片说明;求解

php
0

1个回答

foreach 是同等级别的就不会影响,如果是嵌套级别就有可能影响

0
baidu_37944821
圈点丶 我这里是同级别的 所以我认为可能是之前循环中的&影响到了后面的
大约 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
在foreach循环中preg_match_all
[code=PHP]rn'images/news/waiguan/art_1250262268_8899.jpg',rn 1=>'images/news/waiguan/art_1250262285_9999.jpg'rn);rnforeach($array as $value)rnrn preg_match_all('/art.*jpg/i',$value, $name);rn $img = $name[0][0];rn echo $img;rn echo " ";rn ......rnrn...rn?>rn//----需求是我想把上面一长串的字符串里的图片名给提取出来,但是报错说:preg_match_all() expects parameter 2 to be string, array given in ...rn//----自我觉得并没写错,因为我前边儿也这样用的。rn//----请各位看看,这应该是哪里的问题,感谢。rn[/code]rnrn
PHP foreach循环中引用问题
1.foreach是一个不断赋值的过程; 2.每进行一次循环,当前数组元素的值就会被赋值给 $value 变量(数组指针会逐一地移动); 3.&为引用符,表示直接对数组中的元素进行更改; 不加&表示是复制原数组中的值再进行处理; 4.&会保留最后一个元素的值; eg. 第一次foreach结束后,value的值为8(可理解为value指向data【3】),所以第二次循环...
在forEach循环中嵌套异步操作
需求:在forEach中对item的值进行异步操作,在最后一个item执行完毕执行下一步的操作 首先forEach中能否通过promise来控制每一步异步 [].forEach(async (item, index, arr) => { let result = await this.asFun() }) asFun函数返回的是个promise function asFu...
循环中使用闭包
循环中的闭包 一个常见的错误出现在循环中使用闭包,假设我们需要在每次循环中调用循环序号 for(var i = 0; i < 10; i++) { setTimeout(function() { console.log(i); }, 1000); } 上面的代码不会输出数字 0 到 9,而是会输出数字 10 十次。 当 console.log
continue在循环中的使用
本可称为C语言基础课程,讲解C语言基础入门知识。rn本课程是介绍C语言的基础知识,针对所有对计算机体系结构和嵌入式知识感兴趣的学员。
在循环中使用setTImeout
转自:http://yeak2001.iteye.com/blog/430522 for(var i = 0; i < 10; i++) { setTimeout("testDisplay(" + i +")",1000); } function testDisplay(aa) { console.log("this is aa = "
在循环中使用setTimeout
首先,我想说下闭包.何为闭包,闭包是指内层的函数可以引用存在于包围它的函数内的变量,即使外层函数执行已经终止. 其次是JS的线程问题,JS是单线程的,意味着同一时间只能执行一条语句,所以每个JS执行代码块都会阻塞异步事件的执行,这就意味着当一个异步(鼠标点击事件,AJAX,SETTIMEOUT)发生的时候,他们将排在执行队列的最后等待执行. 最后说下setTimeout,setTi...
break在循环中的使用
本可称为C语言基础课程,讲解C语言基础入门知识。rn本课程是介绍C语言的基础知识,针对所有对计算机体系结构和嵌入式知识感兴趣的学员。
cvCreateHist在循环中使用
for( v=point_x.begin();v!=point_x.end();v++)rn rnrn left_right=up_down=0;rn int HistogramBins1 = 256,HistogramBins2 = 256;rn float HistogramRange1[2]=0,255;rn float *HistogramRange_u[1]=&HistogramRange1[0];rn float HistogramRange2[2]=0,255;rn float *HistogramRange_d[1]=&HistogramRange2[0];rn CvHistogram *Histogram_up=cvCreateHist(1,&HistogramBins1,CV_HIST_ARRAY,HistogramRange_u);rn CvHistogram *Histogram_down=cvCreateHist(1,&HistogramBins2,CV_HIST_ARRAY,HistogramRange_d);//出错rn rnrn每次运行到第二个直方图初始化的时候就出错,说是内存问题,为什么呢
04-each-循环中使用this
DOCTYPE html> 2 html> 3 head> 4 META http-equiv=Content-Type content="text/html; charset=utf-8"> 5 title>each-循环中使用this - by 杨元title> 6 head> 7 body> 8 h1>each-循环中使用thish1> 9
从foreach循环中拿到某一个值
这是从页面的foreach循环中拿到一个列的值并且拼装url请求到控制层 //foreach循环中拿到一个列的值并且拼装url请求到控制层 <script type="text/javascript"> //定位到某一列的id并触发事件 $("#payYmBtn").click(function(){ //拿到payym这个类并且得到其html内容赋值给ym
LINQ在foreach循环中存在的问题
代码如下rn List table = new List();rn table.Add("a");rn table.Add("b");rn table.Add("c");rn table.Add("aa");rn table.Add("bb");rn table.Add("cc");rn table.Add("aabb");rn table.Add("aacc");rn table.Add("bbcc");rn table.Add("aabbcc");rnrn string[] keys = new string[] "a", "b", "c" ;rnrn IEnumerable sql = table;rnrn foreach (string key in keys)rn rn sql = sql.Where(s => s.Contains(key));rn rnrn int count = sql.Count();rnrn我想要的结果应该是count为1,找到的那个字符串是aabbccrnrn但是实际结果是5,返回的是c, cc, aacc, bbcc, aabbcc, 也就是只有最后一个条件满足了rn我调试了一下发现,在第3次进入foreach循环体时,sql仍然还有10个对象,似乎前2次的WHERE都没有生效rnrn然后我将foreach换成了rnfor (int i = 0; i < keys.Length; i++)rnrn string key = keys[i];rn sql = sql.Where(s => s.Contains(key));rnrnrn结果就是 count为1了,正确了rnrnrn谁知道这是为什么吗
foreach循环中分批执行方法的请教
我在一个 foreach循环中想以items的数量作为单位计算,当items循环到第10个,20个时调用方法,当有24个itmes时rn要调用3次方法,即第10次,第20次,以及剩下的4次为一次rnforeach(objitmes obj in itmes)rnrn 第10,20次,剩下的rn 调用方法rnrn如果我想以obj为单位,每个obj里有6个盒,当循环到第50盒调用一次方法,按上面的例子,有144盒,即第50盒,rn第100盒,剩下的44盒,三次调用rn也就是根据数量,rn请问该怎么实现,调用方法都在foreach 里
获取c:foreach循环中的row对象
转自:http://java.chinaitlab.com/base/840093.html        ${row}      有两点感悟:   1,retObject是一个map类型变量,el可以这么取值,   2,row是放在了pageContext中,想在java的尖括号中用的话可以像上面那样取。(虽然这种要求很少见); 很少见的要求被我
foreach循环中不用break,如何跳出循环
代码如下:要求,不用break,如何实现跳出循环. 可重复循环.rnstring str[]="1","2","3","4","5"rnforeach(string tempStr in strrn if (tempStr=="3")rn System.out.prin(tempStr+"\r\n"); rn break;rn rnend
C# 学习笔记 foreach循环中的迭代器
迭代器是一个代码块,按顺序提供了要在fordeach循环中使用的所用值。一般情况下这个代码块是一个方法,但也可以使用属性访问器和其他代码作为迭代器。下面只介绍方法。      无论代码块是什么,其返回类型都是有限制的。与期望的相反,这个返回类型与所枚举的对象不同。两种可能的返回类型是前面提到的接口类型IEnumerable和IEnumerator。使用这两个类型的场合是: 1,如果迭代一个类成
foreach循环中$p[] = $MaterialType 的疑问
[code=php]rnclass so_getMaterialTypernrn var $CreateTime = '';rn var $IsDefault = '';rn var $UpdateTime = '';rnrnrnrn$p = array();rn$sql = 'SELECT * from tb where lid<50';rn$re_materialTypeID = $db->getAll($sql);rnrnforeach($re_materialTypeID as $key => $val)rnrn $getMaterialType = new so_getMaterialType ; //为什么每次循环都要新申请一遍,而不是放在循环外面申请一次即可??rn rn $getMaterialType->CreateTime = $val['CreateTime'];rn $getMaterialType->IsDefault = $val['IsDefault'];rn $getMaterialType->UpdateTime = $val['UpdateTime'] ;rnrn $p[] = $getMaterialType ;rnrnvar_dump($p);rnreturn $p;rn rn/*————————这种写法与上面差别是什么??———————————*/rnrn$getMaterialType = array();rnrn$getMaterialType[] = new so_getMaterialType ;rnrn$sql = 'SELECT * from tb where lid<50';rn$re_materialTypeID = $db->getAll($sql);rnrnforeach($re_materialTypeID as $key => $val)rnrn $getMaterialType[$key]->CreateTime = $val['CreateTime'];rn $getMaterialType[$key]->IsDefault = $val['IsDefault'];rn $getMaterialType[$key]->UpdateTime = $val['UpdateTime'] ;rnrnrnvar_dump($getMaterialType);rnreturn $getMaterialType;rn[/code]
再发foreach循环中增加元素
public function index() { // return '论坛首页'; $lists = Db::table('forumList')-&amp;gt;where('state','neq',0)-&amp;gt;order('state desc')-&amp;gt;paginate(10); $arrs = []; foreach...
16.1 foreach 循环中捕获变量的变化
  在 foreach 循环内的匿名函数(通常为Lambda表达式)中捕获循环 变量时要格外小心。代码清单16-1就展示了这样一个简单的示例,它看上去似乎会输出 x 、 y 、 z 。 1 string[] values = new string[] { "x", "y", "z" }; 2 var actions = new List&...
foreach循环中,这样的变化如何写
输出的内容一样的,只是样式不一样,rn第一个输出rn[color=#800000]题目1[/color] rn第二个输出rn[color=#FF0000]题目2|[/color](没有标签了且后面跟有|)rn以此类推rn我只写出了第一个,第二个不会写了,我也知道要用判断,但不知怎么写rnrn[code=php]rn rn 11 && $value['navigation_id']<27)?>rn 题目1 rn rn rn [/code]
php(while 循环中换行)
rn rn 用户名: 发表时间: rn rn rn rnrn这个是从数据库里查询出内容显示到页面上,怎么控制换行否则页面变形:rn用户名:xxxxxxxxxxxxxxxxxxx 发表时间:2008-4-16rnddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddrn内容过长页面变形,怎么解决,请大家帮忙...谢谢.....将上面代码改下rnrn
在循环中
public class InTheLoop { public static final int END = Integer.MAX_VALUE; public static final int BEGIN = END - 100; public static void main(String[] args) { int count = 0; for(int i= BEGIN ;
循环中的异步&&循环中的闭包
在这之前先要了解一下 for循环中let 和var的区别 var 是函数级作用域或者全局作用域,let是块级作用域 看一个例子 function foo() { for (var index = 0; index &amp;lt; array.length; index++) { //..循环中的逻辑代码 } console.log(index)...
PHP 改变循环中的值
[code=php] foreach($array as $key=>&$value)rn //如果 $value 也是一个数组rn //我要拆分 $value 例如足够拆分2此rn $result = array_slice($value,0,3);rn //下次循环 的rn $value = array_slice($value,3);rnrn //问: 怎么是下次循环数组为 array_slice($value,3);rn [/code]rnrn小弟 刚接触PHP 各位帮帮忙哇
循环中的this
1.效果:点击按钮,按钮变色。 代码: var btn = document.getElementsByTagName("button"); for(var i = 0;i btn[i].onclick = function(){ this.className = "current";         } } 注解:每次点击都会变色,这样就是一个循环的过程。
循环中的异步&&循环中的闭包
原文链接在这之前先要了解一下 for循环中let 和var的区别 var 是函数级作用域或者全局作用域,let是块级作用域看一个例子 function foo() { for (var index = 0; index &amp;lt; array.length; index++) { //..循环中的逻辑代码...
PHP foreach循环中元素直接赋值失败的问题
最近在写PHP业务逻辑的时候,犯了一个小错误,特意在这里记录一下,代码如下: foreach ( $data as $item ) { $item['pick'] = str_replace('01', '1', $item['pick']); } 这是一个非常普通的逻辑,就是修改元素里某个属性的值,修改完之后再赋值给自己。但是我却发现这里的结果与我的想法有出入,并没有修改成功。 ...
php foreach循环中unset后续的键值问题
实例: $arr=array('a','b','c','d','e','f'); foreach($arr as $index=&gt;$tmp){   echo $index.'=&gt;'.$tmp.PHP_EOL;   unset($arr[1]); } print_r($arr); exit; 输出结果为: 0=&gt;a1=&gt;b2=&gt;c3=&gt;d...
【PHP】 foreach循环中变量引用的一道面试题
朋友昨天去金山面试PHP开发时遇到的一道面试题,是关于引用和foreach循环的。很基础的一道题 废话不多说,直接看代码: $a = array('a','b','c'); foreach($a as &$v){} foreach($a as $v){ } var_dump($a);现在。不要打开浏览器,猜测一下。输出的结果是什么? 对引用比较了解的童鞋可能已经看出来了。正确答案
javascript 循环中使用匿名函数
一、什么是匿名函数? 在Javascript定义一个函数一般有如下三种方式: 函数关键字(function)语句: [code=&quot;java&quot;] function fnMethodName(x){alert(x);} [/code] 函数字面量(Function Literals): [code=&quot;java&quot;] var fnMethodName = function(x){a...
在循环中使用事务的问题
OPEN BaseInfo_cursor -- 打开游标,共2条记录rn FETCH NEXT FROM BaseInfo_cursor INTO ... -- 取字段值rn WHILE @@FETCH_STATUS = 0 -- 取游标状态 0-成功rn BEGINrn select @PoolSql = .....rn select @MyErr = 0rn begin transaction @TransNamern Execute(@PoolSql) -- 有错误rn Select @MyErr = @MyErr + @@errorrn update BookBaseInfo set Valid = 0 where ... -- 无错误rn Select @MyErr = @MyErr + @@errorrn if @MyErr <>0 rn rollback transaction @TransName rn elsern commit transaction @TransNamern FETCH NEXT FROM BaseInfo_cursor INTO... -- 取下一条记录字段值rn ENDrnrn整个循环应该执行两次,第一次出现错误,回滚,第二次循环内容就不执行了,什么原因呢?各位大侠帮助分析一下。
在循环中使用break语句
本教程从初学者角度出发,通过通俗易懂的语言、丰富多彩的案例,详细介绍了使用Java语言进行程序开发需要掌握的知识包括初识Java、Java语言基础、流程控制、类和对象、封装、继承、多态等。所有知识点都结合具体实际案例进行讲解,涉及的程序代码给出了详细的注释,可以让你快速提高开发技能。
return break在循环中的使用
return是跳出当前所在的一层循环,如果要跳出最外层的循环,则应该使用标志位,eg: package cn.enn; public class ForIn {  /**   * @author zhangxiaojun   * @version Aug 31, 201
循环中使用Random注意事项
循环调用方法时如果方法中有随机数Random  应采用不在方法中new而是采用传参的形式,因为当循环调用执行速度很快时,会导致每次new出来的Random的种子相同,造成产生的随机数相同    如一定要在循环中写  可将System.currentTimeMills()置换成循环数 i(或不写) 这样生成随机数的种子不同便不会生成相同的随机数
fgets在循环中使用出错?!
fgets在循环中使用出错?! 是的,我今天在做程序时,就遭遇了这个问题,严格上来说,这是一个与指针有关的问题。先看看下述代码段: #define LINE_LENGTH 100 void import_file(char* file_path) { int sum = 0; FILE   *fp_r;    FILE   *fp_w;    char   *line;//
循环中使用remove/add
今天在编写MIT实验Poetic Walks的过程中,在循环中为了删除list中的元素,使用了remove方法。在编写测试用例时发现错误。经过学习发现,这是一个从未注意过的误区。 以往使用remove的环境是只在循环中删除list中的某一个元素,那样只需在找到特定元素并删除后break出循环即可。 然而当需要在循环总删除多个元素时这种方法就不行了。 当我们在循环中删除某个元素后,list的大...
循环中能否使用DrawText
我在循环中使用了DrawText,在同一个位置显示,每次循环总是新的结果覆盖旧的结果.rn那位高手知道如何解决?
循环中使用List.remove的坑
如图,如果在遍历ArrayList的时候涉及到remove, 要记得把i--。 因为当remove()执行后所有元素都向前移动了一格,指针不动就已经是下一个了,再i++的话就会漏掉一个元素,切记!!!
tp3.2 循环中使用事务
2019独角兽企业重金招聘Python工程师标准&gt;&gt;&gt; ...
在循环中使用continue语句
本教程从初学者角度出发,通过通俗易懂的语言、丰富多彩的案例,详细介绍了使用Java语言进行程序开发需要掌握的知识包括初识Java、Java语言基础、流程控制、类和对象、封装、继承、多态等。所有知识点都结合具体实际案例进行讲解,涉及的程序代码给出了详细的注释,可以让你快速提高开发技能。
相关热词 c# gdi 占用内存 c#中遍历字典 c#控制台模拟dos c# 斜率 最小二乘法 c#进程延迟 c# mysql完整项目 c# grid 总行数 c# web浏览器插件 c# xml 生成xsd c# 操作sql视图