下载鸥 > 网站下载 > 开发教程 > PHP

PHP的for循环为什么只执行了一次就停止了?

293 2021-05-31 10:00:01

收藏
今天有朋友咨询鸥哥,说php写的for循环本来至少要循环9次,但却只执行了一次就停止了,这是什么原因?

PHP的for循环为什么只执行了一次就停止了?

关于for循环

for循环一般用于循环一个变量,例如$i=0;$i<count($data);$i++,不执行完指定次数、不强制打断是不会终止的。如果在其中加入了判断,则会根据条件中的次数进行判断。
 

问题排查

查看朋友源码后,发现这家伙习惯了反复给原变量赋值,就如str_replace替换,替换了很对回之后,变量名没发生变化。而这不能用于for循环之中。从代码上看,他指定了一个变量$data,却又在下方循环第一次时就给这个变量进行了赋值为$data=$data[$i],那自然是不会继续循环下去了。错误代码如下:
<?
  $data='某个数组';
  for($i=0;$i<count($data);$i++){
    $data=$data[$i];
  }
?>
 

for循环只循环一次就结束的原因

因为给数组直接赋值了循环的第一个值,这个时候,循环就被迫中止了。正确的源码如下
<?
  $data='某个数组';
  for($i=0;$i<count($data);$i++){
    $thisdata=$data[$i];
  }
?>

错误比较初级,一般是写惯了反复给原变量赋值就容易犯这样的错误。很简单,循环后的值改个名称,不要用数组的名称就好了。

本文地址:https://xzo.com.cn/develop/php/1002.html

有帮助,很赞!

信息来源:下载鸥
信息标签
导出教程 下载word版教程
发表评论 共有条评论
  • 隐藏的大佬 2021-06-04 14:09:40评论 #沙发#

    〒▽〒 飘过,是我滴错

关于PHP

PHP是一种服务器端、跨平台、html嵌入式的脚本语言,其功能十分强大、入门简单。在过去,民间一直有说法称“PHP是最好的编程语言”,是PHP开发者对自身所使用语言的肯定。

PHP曾是最主流的网站web开发语言之一,现在也依然十分流行。

推荐PHP开发教程
PHP判断某个时间戳(打卡、点餐、签到等)是不是今天记录的
PHP判断某个时间戳(打卡、点餐、签到等)是不是今天记录的

php判断时间戳是不是今天的实现方法:首先创建一个PHP示例文件;指定一个时间,并...

15 1000
PHP怎样用正则判断一个链接是内链还是外链?
PHP怎样用正则判断一个链接是内链还是外链?

在日常文章的发表过程中,由于需要引入一些外部链接达到更好的效果与体验。但...

26 1204
php怎样开发一个访问密码的界面防止资源被爬取?
php怎样开发一个访问密码的界面防止资源被爬取?

互联网上每天都有很多爬虫到处爬取内容,你可能不知道他们是干嘛的,但其中肯定...

1 291
PHP排序函数sort、asort、rsort、krsort、ksort区别与用法详解
PHP排序函数sort、asort、rsort、krsort、ksort区别与用法详解

在php中自带了大量了数组排序函数,使用起来非常简单,下面我们一一来介绍一下...

3 332
宝塔Nginx免费防火墙提示post参数(post_max_size)值长度超过20w已被系统拦截怎么办?
宝塔Nginx免费防火墙提示post参数(post_max_size)值长度超过20w已被系统拦截怎么办?

页面提交post请求后被宝塔防火墙拦截,查看日志显示错误:参数值长度超过20w已...

1 418
php分割中文字符源码分享与可行性分析
php分割中文字符源码分享与可行性分析

php分割中文字符,之前计划的是可用于搜索结果、tag结果关键词标红。但在实际...

0 294
php基础应用:获取今天是星期几并给变量赋值
php基础应用:获取今天是星期几并给变量赋值

在网站的开发过程中,我们经常需要获取今天是星期几,并根据星期的不同而进行不...

0 288
什么是高并发,与CPU,内存,分布式有什么关系
什么是高并发,与CPU,内存,分布式有什么关系

我们在网站开发的过程中经常会接触到高并发这个概念,但高并发到底是什么,具体...

1 261
随机PHP开发教程
php字符比较函数strcmp()和strcasecmp()的用法与区别
php字符比较函数strcmp()和strcasecmp()的用法与区别

比较字符串是任何编程语言的字符串处理功能中重要的特性之一。在PHP中除了...

0 256
php正则提取字符串中的数字并打印输出
php正则提取字符串中的数字并打印输出

我们在网站开发的过程中经常需要处理数据,今天讲讲怎样用正则提取字符串中的...

0 299
使用screw plus加密来保护php代码安全
使用screw plus加密来保护php代码安全

screw plus是一个开源的php扩展,作用是对php文件进行加密,网络上提供php加密...

0 295
php下foreach提示Warning:Invalid argument supplied for foreach()
php下foreach提示Warning:Invalid argument supplied for foreach()

在日常程序开发过程中,我们可能会遇到各种各样的程序报错。有时可能是语法错...

0 284
php性能困惑:内存和网络都很正常,但是CPU利用率为什么达到了100%
php性能困惑:内存和网络都很正常,但是CPU利用率为什么达到了100%

在服务器监控平台,我们不难发现cpu比较容易跑到100%,而内存和网络都是很正常...

1 244
什么是高并发,与CPU,内存,分布式有什么关系
什么是高并发,与CPU,内存,分布式有什么关系

我们在网站开发的过程中经常会接触到高并发这个概念,但高并发到底是什么,具体...

1 261
PHP基础函数介绍: is_numeric() 函数有什么用?
PHP基础函数介绍: is_numeric() 函数有什么用?

is_numeric()是一个php函数,主要用于检测变量是否为数字或数字字符串,如果是,...

0 250
PHP内存溢出:Allowed memory size of 134217728 bytes exhausted (tried to allocate 8192 bytes) in
PHP内存溢出:Allowed memory size of 134217728 bytes exhausted (tried to allocate 8192 bytes) in

今天有客户联系鸥哥,说php导出excel报错Fatal error:Allowed memory size of...

0 272
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入