仓酷云

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

[学习教程] PHP网页设计PHP操作文件问答

[复制链接]
再见西城 该用户已被删除
跳转到指定楼层
#
发表于 2015-2-4 00:30:07 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
在这里想谈谈自己这六个多月的PHP学习心得,希望对给比我还新的新手们有所帮助,讲的不是很深刻,甚至有的想法可能是错误的,希望不要误导新人才好,大家要有自己的主见。   PHP操作文件问答媒介:
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供应的毛病信息屏障的公用符号

或您可以在这个要操作的步调前增添(凡是是在页首)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修正为交换变量数据就能够了:)

  培训的第一阶段,学习的是HTML/CSS/JavaScript基础。
小女巫 该用户已被删除
18#
发表于 2015-7-20 12:20:29 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
飘灵儿 该用户已被删除
17#
发表于 2015-7-11 02:39:10 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
兰色精灵 该用户已被删除
16#
发表于 2015-7-9 03:10:12 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
小魔女 该用户已被删除
15#
发表于 2015-6-26 20:41:07 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
山那边是海 该用户已被删除
14#
发表于 2015-6-4 01:23:09 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
海妖 该用户已被删除
13#
发表于 2015-5-1 04:03:31 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
活着的死人 该用户已被删除
12#
发表于 2015-4-15 08:49:08 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
莫相离 该用户已被删除
11#
发表于 2015-4-12 21:01:32 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
透明 该用户已被删除
10#
发表于 2015-4-12 16:17:22 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
分手快乐 该用户已被删除
9#
发表于 2015-4-4 10:31:08 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
不帅 该用户已被删除
8#
发表于 2015-4-4 09:57:03 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
admin 该用户已被删除
7#
发表于 2015-3-30 22:37:46 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
小妖女 该用户已被删除
6#
发表于 2015-3-29 12:54:32 | 只看该作者
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
再现理想 该用户已被删除
5#
发表于 2015-3-16 23:18:12 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
金色的骷髅 该用户已被删除
地板
发表于 2015-3-13 00:50:13 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
板凳
发表于 2015-3-9 21:00:11 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
蒙在股里 该用户已被删除
沙发
发表于 2015-2-9 23:16:00 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
深爱那片海 该用户已被删除
楼主
发表于 2015-2-4 13:14:47 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-22 21:37

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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