Php 在foreach中的第一项循环两次
我试图找出一种最干净的方法来循环两次数组中的第一项。我的foreach看起来像这样:Php 在foreach中的第一项循环两次,php,Php,我试图找出一种最干净的方法来循环两次数组中的第一项。我的foreach看起来像这样: foreach ($array as $arr) { $arr['item']; } 我问这个问题的原因是因为我正在循环并运行一个需要设置cookie的curl脚本。在第一个循环中,设置不正确,但在所有其他循环中都设置了。理想情况下,我只想在第一个元素中点击两次,然后覆盖我正在提取的值。如果需要在第一个元素中创建两次,可以这样做 $firstItem = true; foreach ($array a
foreach ($array as $arr) {
$arr['item'];
}
我问这个问题的原因是因为我正在循环并运行一个需要设置cookie的curl脚本。在第一个循环中,设置不正确,但在所有其他循环中都设置了。理想情况下,我只想在第一个元素中点击两次,然后覆盖我正在提取的值。如果需要在第一个元素中创建两次,可以这样做
$firstItem = true;
foreach ($array as $arr) {
if ($firstItem) {
$arr['item'];
$arr['item'];
$firstItem = false;
} else {
$arr['item'];
}
}
但与其做两次,也许你应该第一次找出为什么它不起作用?
+1到前面的注释,您应该修复问题,但不能解决它。如果您需要使用第1个元素进行两次操作,您可以这样做
$firstItem = true;
foreach ($array as $arr) {
if ($firstItem) {
$arr['item'];
$arr['item'];
$firstItem = false;
} else {
$arr['item'];
}
}
但与其做两次,也许你应该第一次找出为什么它不起作用?
+1到前面的评论,您应该解决问题,但不能解决问题。如果顺序不重要:
array_push($array, reset($array));
foreach ($array as $arr) {
...
}
如果是,最好使用Elena的建议。如果顺序不重要:
array_push($array, reset($array));
foreach ($array as $arr) {
...
}
如果是,最好使用埃琳娜的建议。听起来你是在试图解决一个问题,而不是在第一次循环中找出问题……正确,先生。我希望保持这种方式。澄清一下,尽快运行一段代码背后有商业原因。这不是生产,我只是需要它工作,现在没有时间调试curl代码。我会回到那一点上。你为什么要故意避免一个问题?无论如何,只需使用
array\u unshift()
将第一个条目输入两次。听起来你是在试图解决一个问题,而不是在第一次循环中找出问题……正确,先生。我希望保持这种方式。澄清一下,尽快运行一段代码背后有商业原因。这不是生产,我只是需要它工作,现在没有时间调试curl代码。我会回到那一点上。你为什么要故意避免一个问题?无论如何,只需使用array\u unshift()
将第一个条目放入两次即可。