草庐IT

foreach-loop-container

全部标签

PHP Foreach 循环和 DOMNodeList

我正在尝试确定以DOMNodeList集合作为种子的foreach循环的结束。目前,我正在使用for循环,希望避免在那里出现“魔数(MagicNumber)”。我知道只有8列,但我希望代码对其他应用程序通用。是否可以将其转换为Foreach循环?我已经尝试了end()和next()函数,但它们没有返回任何数据,我怀疑它们只适用于数组而不是这个DOMNodeList集合。代码正在构建一个没有尾随','的CSV文件当前输出为:“值1”、“值2”、“值3”、“值4”、“值5”、“值6”、“值7”、“值8”这是一个代码示例:$cols=$row->getElementsByTagName("t

php - 验证元素是否已准备好在 php 的 foreach() 循环中使用的最佳方法是什么?

例子:foreach($boxesas$box){echo"$box\n";}过去相当简单,我可以将foreach包裹在支票周围,例如:if(is_array($boxes)&&count($boxes)>0){//foreachloophere}如果由于某种原因将错误的输入传递给$boxes数组,则不必担心会抛出警告。当迭代器被添加到组合中时,这不再有效,因为可迭代对象不是数组。所以,我有一些解决方案,但想知道是否有这方面的“最佳实践”。//1:if($boxesinstanceofTraversable&&count($boxes)>0){//foreachloophere}//2

php - PHP 中的 Foreach 和数组

我对应该如何编写此函数感到非常困惑...它基本上可以通过测试,并且适用于一个用户的值(value)观。假设我想要以下用户的值:$id=2...这行得通!如果$id=array(2,3,4,5)它不起作用!functionget_score_a($id){//Case4foreach($this->get_results_a($id,4)->row()as$key=>$a){if($a>=2&&$a4&&$a8){$score_a+=floor($a-8)*.5;$score_a+=3;}};return$score_a;}functionget_results_a($id,$metho

PHP foreach 循环不按数字顺序获取数组元素?

我有一个正在构建的数组:foreach($itemsas$item){$this->_array[(int)$item->getPosition()]=$item;}然后当我遍历该数组以输出它时,我希望这样:array([0]=>item0,[1]=>item1,[2]=>item2,[3]=>item3,)但是我明白了:array([3]=>item3,[0]=>item0,[2]=>item2,[1]=>item1,)我只能假设是键的设置顺序。为什么它们不按顺序出现?有没有办法强制数组按数字顺序按键排序? 最佳答案 只是ksor

PHP嵌套foreach

我以为我了解php数组,但我似乎不了解:(这是我的代码:";foreach($articles[$magazine]as$article)echo$article."";}?>它只打印杂志,而不打印每本杂志中的文章。很明显,我对嵌套的foreach循环有些不了解。请你帮助我好吗?我究竟做错了什么?提前致谢!:) 最佳答案 你错过了嵌套循环中的[]:";foreach($articles[$magazine]as$article)echo$article."";}?>这段代码应该可以工作

PHP:多维数组中的foreach

我有一个创建章节和子章节的动态表单,它创建一个数组:var_dump($_POST);array{["textfield"]=>array{[0]=>"titleone"[1]=>"titletwo"[2]=>"titlethree"[4]=>"titlefour"}["textarea"]=>array{[0]=>"titletext"[1]=>"titlesummary"[2]=>"titledescription"[4]=>"titledetails"}["hidden"]=>array{[0]=>"1"[1]=>"2"[2]=>"3"[4]=>"1"}}我对数组很弱。我阅读了几

php - 在 PHP 的 foreach 循环中对项目进行分组

所以,我正在尝试做一种用户市场类型的东西。有一个包含item_names的数据库,基本上描述了虚拟元素,然后还有另一个表market,当用户列出他们的一个元素时,它就被出售给用户-用户市场。我唯一的问题是我想按项目名称对其进行分组,在item_name表中引用。我知道我可以做一堆if/else语句,但这是无关紧要的,不仅因为有很多项目,而且因为随着时间的推移我会添加更多项目。我希望最终结果是这样的--[Waterforsale]---------------------+[50waterforsale][20waterforsale][10waterforsale][10waterfo

php - 将 foreach 与可能不是数组的变量一起使用

所以,这是我的情况:我将一些输入存储在一个变量中($keywords)。这个变量可以是一个字符串(=1个关键字)——比如"banana",也可以是一个数组(=多个关键字)——比如array("banana","apple"“芒果”)。这是我使用它的方式:foreach($keywordsas$keyword){//dosthwith$keyword}当$keyword是一个数组时,这工作正常,但如果不是,我就会出错。(很明显)什么是最有效的解决方法,以避免错误,同时保持我的foreach结构不变?这是我想到的(放在循环之前),但我不太喜欢它:if(count($keywords)==1

php - 在 foreach 循环中追加数组的方法比较

我已经设置了一个关联数组数组(带有用于测试的虚拟数据),如下所示://Toholddropdownfilteroptions$results['filters']=array('Client'=>array(array('a'=>'1')),'Project'=>array(array('b'=>'2')),'Status'=>array(array('c'=>'3')),'User'=>array(array('d'=>'4')));谁能告诉我为什么这样行得通://Add'All'optiontothetopofeachfilterdropdownforeach($results['

php - 为什么我不能在 foreach 循环中将元素插入子数组?

我正在尝试了解有关foreach循环中的数组的一些内容,这对许多人来说可能是显而易见的。当我遍历多维数组时,我试图找到没有第三个元素的子数组。如果它们没有第三个元素,我想向该子数组添加一个具有特定值的第三个元素。$testArray=array(array("Green","Yellow","Blue"),array("Brown","Silver"),array("Orange","Pink","Black"),);当我使用foreach循环时:foreach($testArrayas$key=>$array){if(count($array)=='2'){$array[]="Non