foreach和<FH>读文件
时间:2010-08-03
来源:互联网
今天错误的使用了foreach来读文件。
foreach $line (<$fh>){
if(...){
last;
}
...
}
foreach $line (<$fh>){
...
}
本想第一个foreach读到一个条件的时候退出进入第二个foreach处理。
结果第二个foreach什么也没有读到。用tell($fh)发现一进入第一个foreach文件句柄就到了文件末尾,所以第二个foreach什么也读不到了。
foreach在这里需要一个列表,所以<$fh>就把整个文件给读了进来,自然文件句柄就到了文件末尾。
foreach $line (<$fh>){
if(...){
last;
}
...
}
foreach $line (<$fh>){
...
}
本想第一个foreach读到一个条件的时候退出进入第二个foreach处理。
结果第二个foreach什么也没有读到。用tell($fh)发现一进入第一个foreach文件句柄就到了文件末尾,所以第二个foreach什么也读不到了。
foreach在这里需要一个列表,所以<$fh>就把整个文件给读了进来,自然文件句柄就到了文件末尾。
作者: yecheng_110 发布时间: 2010-08-03
这就是 foreach 和 while 的区别。
作者: flw 发布时间: 2010-08-03
用while不就好了·
作者: wfnh 发布时间: 2010-08-03
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28