对于range(),我有一个非常奇怪的问题;根据文件:
Create an array containing a range of elements
但当我这样做时:
foreach (range(900,950,1) as $art_id){
//ob_start();
//do stuff
//do a lot more stuff
echo $art_id;
//ob_get_clean(); }
甚至
$arts_id = range (900, 920);
foreach ($arts_id as $art_id){
//ob_start();
//do stuff
//do a lot more stuff
echo $art_id;
//ob_get_clean(); }
输出奇怪地以一系列的方式重复
“900,900,901,900,901,902,900,901,900,901,900 2,903,900...”
这意味着它将返回到每个循环后的第一个ID。
(1st iteration -> 900
2nd iteration -> 900,901
3rd iteration -> 900,901,902
...)
当我只是放置一个手动数组时,它的工作非常有序,没有重复:
$arts_id = array(900,901,902,903,904,905,906,907,908,909,910...);
我做错了什么(又一次??)
编辑I
下面是整个脚本:
http://pastebin.com/zhm3ub6n
它实际上是simplehtmldom脚本中包含的slashdot刮取示例的稍微修改的版本。没什么特别的.
它在WP内部但在循环之外执行。
它必须在您的其余代码中,因为这工作很好。请分享更多的脚本。
看起来foreach嵌套在一个相似的foreach中,
$arts_id = range (900, 920);
foreach ($arts_id as $art_id){
foreach (range (900,$art_id) as $art_id2){
echo $art_id2."<br/>";
}
}
这将产生您所描述的输出
编辑
就我个人而言,我会添加scraping_slashdot函数,一个变量$ret的重置,以防万一。
例如:$ret=array();
当前,$output的回显位于循环中,它创建如下所示的输出:
Article 1
Article 1, Article 2
Article 1, Article 2, Article 3
etc.
将echo$output放置在循环外部,或$output='';在循环内。
问题内容: 这个问题不太可能对将来的访客有所帮助;它仅与较小的地理区域,特定的时间段或极为狭窄的情况(通常不适用于Internet的全球受众)有关。要获得使该问题更广泛适用的帮助,请访问帮助中心。 7年前关闭。 例如: doc1 = 8 doc2 = 7 doc3 = 1 我想计算$ value,所以结果是8 + 7 + 1 =16。我该怎么办? 谢谢。 问题答案:
问题内容: 我正在运行此数据库调用以获取多维数组,我试图获取每个数组的键,但是当我尝试将其显示为空白或数组时。 这是我的PHP循环遍历: 另外,当我运行一个仅将数组吐出的测试时,这就是结果,我想要呈现的是 [费城] 问题答案: 您可以这样访问数组键:
问题内容: 我第一次不了解PHP。我一直在脚本中使用for循环,while循环,foreach循环。我想知道 哪一个性能更好? 选择循环的标准是什么? 当我们在另一个循环中循环时应该使用哪个? 我一直想知道要使用哪个循环的代码。 很明显,我可以使用while编写上面的代码。希望有人能帮助我找出哪个循环更适合使用。 问题答案: 哪一个性能更好? 没关系 选择循环的标准是什么? 如果只需要遍历对象或数
问题内容: 我正在尝试使用for循环在数组内创建一个数组-这是我的代码: 不幸的是,这给了我一个 “解析错误:语法错误,意外的T_CONSTANT_ENCAPSED_STRING,预期为’)’” 对于该行: 对于出了什么问题,我有些茫然-非常感谢您的帮助。$ clients是在其他地方定义的,所以这不是问题。 问题答案: 那是无效的语法。您必须首先构建数组的“父”部分。然后使用foreach循环添
foreach循环遍历列表值并将控制变量(var)依次设置为列表的每个元素 - 语法 (Syntax) Perl编程语言中foreach循环的语法是 - foreach var (list) { ... } 流程图 (Flow Diagram) 例子 (Example) #!/usr/local/bin/perl @list = (2, 20, 30, 40, 50); # foreach lo
问题内容: 我有这样的1,2,3产品ID 我该如何在for循环回显中使用此代码设置格式,请问还有其他方法吗 问题答案: