<?php $file=fopen("test.txt","r"); //以只读方式打开test.txt $char=fgetc($file); echo $char; ?>
file_get_contents()函数无需经过打开文件及关闭文件操作就可以读取文件中的全部内容。语法为:file_get_contents(string filename)
<? $str=file_get_contents('test.txt'); echo nl2br($str);
?>
file()函数将读取整个文件并将其保存到一个数组中,数组中每个数组元素对应文档中的一行,该函数可用于读取二进制文件。
<? $arr=file("test.txt"); //读取文件到数组中 print_r($arr); ?>
文本文件的写入和追加
fwrite()函数,将一个字符串写入到文本文件中,
fwrite(resource handle, string string[,int length]);
<?php $fp=fopen("new.txt","a"); // a 以追加方式打开new.txt fwrite($fp,'这是写入的一行话 '); fwrite($fp,'最多写入12个字符 ',12); fclose($fp); //关闭文件资源 ?>
结果为: 这是写入的一行话 最多写入12个字符
1.制作计数器:
<?php $fp=fopen("count.txt","r+"); //先读后写操作 $Visitors=intval(fgets($fp)); //读取文件中的内容 $Visitors++; //将计数器加1 rewind($fp); //将文件指针指向开头,以便重新写 fwrite($fp,$Visitors); //将计数器值写入count.txt文件之中 fclose($fp);
?> <html><body> <h2>欢迎进入PHP的世界</h2><hr> 您是本站第<?=$Visitors ?>位贵宾。 </body></html>
2.对计数器设置防刷新功能
可以通过SESSION变量判断是否是同一用户在重复刷新网页
<?php /* * * @Authors peng--jun * @Email 1098325951@qq.com * @Date 2015-11-09 18:06:08 * @Link http://www.cnblogs.com/xs-yqz/ * @version $Id$ ========================================== */ header("Content-type: text/html; charset=UTF-8"); session_start(); $fp = fopen("count.txt", "r+"); $Visitors=intval(fgets($fp));//读取原有访问次数 if (!$_SESSION['connected']) { $Visitors++; //将访问次数加1 $_SESSION['connected'] = true; } rewind($fp); fwrite($fp, $Visitors); 将新的访问次数写回文件 fclose($fp); ?> <p>您是本站第<?=$Visitors ?>位贵宾。</p>
文件及目录的基本操作
<?php if(copy('test.txt','./data/bak.txt')) //复制文件示例 echo '文件复制成功'; else echo '文件复制失败,源文件可能不存在'; //删除文件示例 unlink('./test.txt'); //删除当前文件夹下的test.txt //移动文件示例 if(file_exists('./data/bak.txt')){ //判断源文件是否存在 if(rename('./data/bak.txt','tang.txt')) //移动并重命名为tang.txt echo '文件移动并重命名成功'; else echo '文件移动失败'; } ?>