找回密码
 注册
搜索
查看: 3732|回复: 0

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

[复制链接]
发表于 2003-10-2 22:03:17 | 显示全部楼层 |阅读模式
现在很多的朋友拥有自己免费的空间(毕竟中国穷人还是多的),而吝啬的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);
                                }
                        ?>

                  文件的读取暂时就到这里,下面该是文件的写入了....
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2025-8-8 23:16 , Processed in 0.034322 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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