• ----:)欢迎访问源码网(:----
    • 首页
    • 博客
    • 学院
    • 下载
    • 论坛
    • 影视
    • 发布源码
    • RSS
    • ITPig
    • 笑话网
    • 百家姓
    • 繁體中文

源码网 - 中国第一源码门户
选择镜像:网通镜像 - 电信主站
  • 首 页
  • 新闻动态
  • 网站运营
  • 网页制作
  • WEB开发
  • 编程开发
  • 图像媒体
  • 操作系统
  • 数据库
  • 服务器
热门搜索 优化 SEO 故事 cms IIS7 MySQL 个人 AdSense 主题推广 | 文章搜索: 高级搜索
会员登录/控制面版您的位置: 学院首页 >> WEB开发 >> PHP 开发 >> PHP入门 >> 详细内容
 

推荐文章

  • 谈谈新手如何学习PHP
  • PHP脚本的8个技巧
  • PHP语法速查表
 
 

热点文章

  • PHP中的cookie
  • 谈谈新手如何学习PHP
  • PHP脚本的8个技巧
  • 二元分词函数的分析
  • PHP5学习笔记 -- Classes and Objects in PHP5
  • ascii码及扩展码
  • php中Cookie的设置与使用
  • fgets函数
  • php调用MSSQL存储过程
  • php新手入门(经验谈)
  • 在Windows下安装MySQL
  • PHP编辑器
 
 

相关文章

 
 

百度搜索

 
 

关于PHP操作文件的一些FAQ总结

  • 阅览次数:
  • 文章来源: CP整理
  • 原文作者: sports98
  • 整理日期: 2008-08-07
  • 发表评论
  • 字体大小:
  • 小
  • 中
  • 大

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.datw
文件中数据不止三行)

<?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提供的错误信息屏蔽的专用符号

或您可以在这个要操作的步骤前增加(通常是在页首)error_reporting(0);用来屏蔽页面内所有错误信息的显示

一个不推荐的方法就是去修改php.ini(ISP除外)

问:我使用的是虚拟主机,我如何防止其他用户窃取我的数据?

答:建议ISP修改php.ini中的open_basedir进行限制,

不推荐的ISP设置是将fopen,file等文件操作加入disable_function中。

问:为什么我用PHP建立文件后我FTP登陆要删除这些文件无法删除??

答:主要是因为PHP建立的文件归属WEB用户组,也就是建立的文件,并非是你FTP用户的!!!

这个问题的解决就是,使用PHP程序的chmod,unlink等方式进行处理,建议用户在使用PHP建立文件的时候
记得chmod文件权限,建议为777

问:如何使用文本文件作为数据仓库?有的留言本,论坛之类的都是使用这个的啊!

答:其实这个主要还是使用了file,结合explode进行数据读取与分割的典型范例而已。

问:如何更改文件名?

答:rename();

问:如何删除文件?

答:unlink(); exec("del(rm -vf) filename");注:rm -vf为linux下使用

问:如何清空文件?

答:使用fopen(filename,"w");或exec("echo '' > filename");


问:如何编辑文件内容?

答:我记得我以前回答过一个删除文件内容的,其实编辑内容在删除内容的基础上,进行变量替换就可以了。
希望你可以向上找找,将我上面的continue修改为替换变量数据就可以了:)

上一篇:PHP使用zlib扩展实现页面GZIP压缩输出
下一篇:构建支持Master/Slave读写分离的数据库操作类
  • 网友评论:
  • 查看所有评论
  • 我要发表评论
您的网名:
留言主题:
你要发表的内容:

 

关于本站 | 广告联系 | 版权声明 | 网站地图 | 发布软件 | 帮助中心 | 源码论坛

Copyright © 2005-2007 CodePub.Com  程序支持:木翼  滇ICP备05005971号