动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
  
   PHP → 阅读文章

 如何使用PHP操作文件(文件读取篇)

作者来源: 
阅读 2095 人次 , 2006-3-29 4:19:00 


听说要讨论,朋友邀写一下,希望大家见谅,水平有限:)


现在很多的朋友拥有自己免费的空间(毕竟中国穷人还是多的),而吝啬的isp不给提供mysql,
于是聪明的朋友们就选择了----(file文件表数据库格式),其实是我自己个人这样定义的~

access为文件表数据库,如果您在您的机器上只要加上个dsn就可以透过odbc来存取您的access
内的数据。可是在网络中isp不可能给你配置dsn的哦~,因此我们选择了采用文件来保存数据
file data。

兼顾内容:

 1、实现数据库一些功能--(别指望象数据库那样哦~)
 2、数据安全稳定 --  (需要程序来支持)
 3、维护的便捷  --  (too up)

 这些内容要是一次写在这里,好象不太好~

 先从基础的说起~

 首先您需要个文本来保存,可以有以下几种方式来建立

1、 echo "info" >> file.txt
2、 fopen("file.txt","w/w+/a/a+");
3、 upload your file.txt

第一实现就是
 exec() --- 用之前先看看phpinfo()里是否禁止了此函数哦~

第二
基本都支持啊,我想没哪个isp把这个也给disable吧!

第三
老兄,将您本地的文件传上去吧~


建立好文件了,以下就是对文件的操作了

对文件的操作简单的来说就是--读/写

其中更新/删除全包括在里面。


一、 这里我们先说一下文件的读取
 
 信息保存到了数据文件内后需要读出来的,不读出来,写的再多也是无用,读取文件php提供了几种方式
1、fopen
2、file
3、fsockopen
 具体的例子就摘抄一下了
1、$fp=fopen("text.txt","method");
其中method为
'r' - 以只读方式打开文件; 读取标志在文件第一个字符(相当于c中的文件指针).

'r+' - 以读/写方式打开文件; 读取标志在文件第一个字符(相当于c中的文件指针).

'w' - 以写的方式打开文件; 将写标志放在首位,同时将文件大小设置为最小-0字节. 如果打开的文件不存在,则建立这个文件以提供写.

'w+' - 以读/写方式打开文件; 将写标志放在首位,同时将文件大小设置为最小-0字节. 如果打开的文件不存在,则建立这个文件以提供写

'a' - 以只写的方式打开文件; 将标志放在文件的eof,所有添加的信息将在文件的最后,如果文件不存在则建立文件。

'a+' -以读/写的方式打开文件;将标志放在文件的eof,所有添加的信息将在文件的最后,如果文件不存在则建立文件。
此函数还可以打开http://,ftp://,udp://文件
其中http://,udp://应该以读的方式打开,否则将出错

对此函数有个小小的提示:请勿打开http://文件自身,否则会有小小麻烦~
<?
$testfile="test.txt";
$fp=fopen($testfile,'r');
$outputtext=fgets($testfile,filesize($testfile));
echo "$testfile文本内容:".$outputtext;
fclose($fp)
?>

2、 var $fp=array();
$fp=file("text.txt");
这样的表达的含义大家一看就名白了,file()是将文件全部读取,然后存放到一个数组中
其中文件中每出现一个\n(回车换行)则数组中多一个元素

file函数只有一个参数 file(filename)
<?
$testfile="test.txt";
$fp=file($testfile);
while($int_a=0;$int_a<count($fp);$int_a++){
$info.=$fp[$int_a]."<br>\n";
}
print "$testfile文本内容:\n".$info;
?>

3、
<?php //此为fsockopen打开http://文件
$fp = fsockopen ("www.php.net", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br>\n";
} else {
fputs ($fp, "get / http/1.0\r\nhost: www.php.net\r\n\r\n");
while (!feof($fp)) {
echo fgets ($fp,128);
}
fclose ($fp);
}
?>
<?php //此为fsockopen打开udp://文件
$fp = fsockopen("udp://127.0.0.1", 13, $errno, $errstr);
if (!$fp) {
echo "error: $errno - $errstr<br>\n";
} else {
fwrite($fp,"\n");
echo fread($fp, 26);
fclose($fp);
}
?>



 文件的读取暂时就到这里,下面该是文件的写入了....

 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:文件系统基本操作类
· 下一篇:同时上传100个文件上传的程序
· 类与PHP (VI)
· 一个广告轮播系统的例子(内含文件上传的方法)
· 用PHP做一张xbm图片
· 判断WebSERVER类型
· 最简单的文本计数器


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077