php – 在while循环中附加到数组是否安全?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 在while循环中附加到数组是否安全?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
关于在使用foreach时操作数组的安全隐患,有很多问题.但是,我在while循环中找不到任何关于这样做的问题.

所以我想知道,这样做是否安全?下面是PHP中的示例脚本,我不确定这是否正常.

while ($ITem = array_pop($array)) {
  findMoreitems($item,$array);
}

function findMoreItems($item,&$array) {
  // Returns null if no more items are found
  $newItem = someFuncFromServer($item);

  if ($newItem) {
    array_push($array,$newItem);
  }
}

安全我的意思是:我可以确定循环中没有跳过任何项目吗?

解决方法

您的代码基本上等同于:

$item = array_pop($array);
while ($item) {
  findMoreItems($item,$array);
  $item = array_pop($array)
}

function findMoreItems($item,$newItem);
  }
}

现在,如果你以上面的方式重写它,很明显代码不会做任何像复制引用或数组点或类似foreach所做的任何事情. foreach这样做是因为它依赖于array_pop和array_push所不具备的内部数组指针.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 在while循环中附加到数组是否安全?全部内容,希望文章能够帮你解决php – 在while循环中附加到数组是否安全?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。