仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1464|回复: 18
打印 上一主题 下一主题

[学习教程] PHP编程:关于PHP操作文件的一些FAQ总结

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:29:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
说说这一个月左右的学习情况和心得吧!我个人认为,既然决定了去做一件事,那就要以认真的态度去对待!既然决定来学习了,那不管当初是抱着怎样的心态来到这个培训班的,都要让自己认真的投入到学习中。   媒介:
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文件操作方面应当有点匡助,作者:杨宗威 首发地:CSDN 作者转发地:DEV-CLUB
看这里没就再发一次(究竟写出来就但愿能对人人有点匡助)

≡≡学无尽头≡≡
  学会了生成静态网页,现在你应该接触一下XML了,恩,XML也了解了,那么AJAX你也得接触接触吧?AJAX完了....然后...
精灵巫婆 该用户已被删除
沙发
发表于 2015-2-4 13:14:08 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
不帅 该用户已被删除
板凳
发表于 2015-2-4 22:30:44 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
透明 该用户已被删除
地板
发表于 2015-2-6 16:31:37 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
小魔女 该用户已被删除
5#
发表于 2015-2-10 08:33:14 | 只看该作者
真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,
飘灵儿 该用户已被删除
6#
发表于 2015-3-1 05:25:50 | 只看该作者
当然这种网站的会员费就几十块钱。
第二个灵魂 该用户已被删除
7#
发表于 2015-3-10 12:49:26 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
冷月葬花魂 该用户已被删除
8#
发表于 2015-3-11 11:08:25 | 只看该作者
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
若天明 该用户已被删除
9#
发表于 2015-3-18 07:28:44 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
因胸联盟 该用户已被删除
10#
发表于 2015-3-21 03:25:21 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
山那边是海 该用户已被删除
11#
发表于 2015-3-27 01:16:40 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
若相依 该用户已被删除
12#
发表于 2015-3-28 07:27:28 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
admin 该用户已被删除
13#
发表于 2015-4-16 22:12:04 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
老尸 该用户已被删除
14#
 楼主| 发表于 2015-4-18 12:17:12 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
爱飞 该用户已被删除
15#
发表于 2015-4-27 10:18:06 | 只看该作者
建议加几个专业的phper的群,当然啦需要说话的人多,一处一点问题能有人回答你的,当然啦要让人回答你的问题,平时就得躲在里面聊天,大家混熟啦,愿意回答你问题的人自然就多啦。
金色的骷髅 该用户已被删除
16#
发表于 2015-5-5 22:16:20 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
兰色精灵 该用户已被删除
17#
发表于 2015-5-11 21:21:50 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
乐观 该用户已被删除
18#
发表于 2015-6-4 19:17:03 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
再现理想 该用户已被删除
19#
发表于 2015-6-18 16:08:18 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-14 13:52

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表