文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>PHP开发中文件操作疑难问答

PHP开发中文件操作疑难问答

时间:2006-06-04  来源:henanren


  前言:
  PHP中对各类数据库的操作有着支持,对文件的操作也同样有着很丰富的操作方法,很多朋友现在的操作还是基于文件操作可是有的时候在操作文件的时候还存在不少的困惑和疑点,以下是我在日常编写过程中碰到的以及坛上朋友所碰到的关于文件操作的一些问题收藏吧。
  问:如何新建一个文件?
  答:
  1、使用fopen("要建立的文件名","参数"),参数可选w,w+,a,a+
  2、使用exec("echo '' > 要建立的文件名");这样是使用系统方式建立这个文件,你还可以使用touch这个linux命令来建立
  问:为什么我无法建立文件?
  答:
  1、如果你使用了fopen建立文件,是否正确的使用了参数
  2、系统权限问题,请询问你的WEBMASTER你的FTP目录是否有写的权限
  3、FTP权限问题,你要确认你的PHP文件所要写文件所在目录要有写的权限,也就是你的FTP软件登陆后other组要有写这个权限,
如果没有请修改权限后尝试
  问:如何将文件读入数组?
  答:使用file函数
  问:如何将文件全部读出?
  答:
 
  1、使用fread($fp);
  2、如果你的PHP版本>=4.3.0的话可以使用file_get_contents();
  问:如何判断文件是否存在?
  答:使用file_exists();
  再问:为什么不使用fopen()来判断呢?
  答:原因是有时候是因为权限问题导致fopen返回的数据引导我们错误的判断
  问:为什么当我读取一个WEB页面的时候出错?
  答:
  1、可能是你的传递参数错,当读取WEB页面的时候你只可以使用r方式读取页面
  2、确保你要读取的WEB页面可以访问
  问:我如何才能获得文件的相关属性?
  答:PHP提供了一组获得文件属性的方法,例如 filemtime(),fileowner(),filegroup(),filectime(),fileatime()...详细的使用请参阅手册。
  问:PHP打开文件后是否可以象C一样进行文件“游标”的定位呢?
  答:可以的,使用fseek();
  问:我想在访问文件的时候不允许其他人也访问此文件,怎么办?
  答:
  1、你可以采用其他方面程序限制用户接入文件操作的页面
  2、使用flock();详细的参数以及使用方法请参阅手册
  问:如何删除文件内第一行,或指定一行数据?
  答:
  PHP并没有提供这样的操作方法,不过我们可以通过组合使用,以下代码演示我们将删除文件"test.dat"中的第三行数据(test.dat 文件中数据不止三行)
<?php
 $filename="test.dat";//定义操作文件
 $delline=3; //要删除的行数
 if(!file_exsits($filename)){
  die("指定文件未发现!操作中断!");
 }
 $farray=file($filename);//读取文件数据到数组中
 for($tmpa=0;$Tmpa<count($farray);$Tmpa++){
  if(strcmp($Tmpa+1,$delline)==0){
   //判断删除的行
   continue;
  }
  //重新整理后的数据
  $newfp.=$farray[$Tmpa]."\r\n";
 }
 $fp=@fopen($filename,"a") or die("写方式打开文件 $filename 失败");//我们以写的方式打开文件
 @fputs($fp,$newfp) or die("文件写入失败");
 @fclose($fp);
?>
  以上代码演示的是删除一行文件,不过你如果仔细的看的话,其实也给你提供了其他的文件操作的相关提醒~
  问:当我试图打开一个不存在的文件的时候,我如何不让错误显示出来以避免我的路径泄露!!
  答:在你要打开文件的方法前增加@符号用来屏蔽错误,@是PHP提供


相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载