当前位置:Gxlcms > PHP教程 > 文件头到底是哪里~~

文件头到底是哪里~~

时间:2021-07-01 10:21:17 帮助过:3人阅读

"r" 只读方式打开,将文件指针指向文件头。

这个文件头到底是哪里。

比如一个文件的内容是abc,,

所谓的文件头是指abc的前面那个位置,还是a字母这个位置。。。。。。

所谓的EOF又在哪,是c这个位置,还是abc后面那个位置。。。。

============
比如我们经常用fgetc来读取文件,一个字符一个字符的,
$fp=fopen("data.html","r");
if(!$fp){
echo "can't open the file!";
}else{
while(!feof($fp)){
$char=fgetc($fp);
echo $char."
";
}
}
?>
是不是文件头是在a字母这个位置,而不是a前面那个位置,
然后执行一次fgetc,指针就下移动一位,所以当读完字母c的时候,
指针就在c的后面,也就是文件的EOF处,这个时候feof($fp)为true,程序不执行?


回复讨论(解决方案)

所谓的文件头是指abc的前面那个位置

所谓的EOF是abc后面那个位置
while(!feof($fp)){
echo ftell($fp), ' '; //这样应该就看清楚了
$char=fgetc($fp);
echo $char."
";
}

那不对呀。。既然一开始打印出0.。。。

那0应该就是字母a的位置阿。。。尾巴是abc后面那个。。。

毕竟你只打印出4个位置,
分别是a,b,c和EOF。。。

语文啊,语文

语文啥呀 哈哈。

版主第一次出错

人气教程排行