首頁 > php教程 > php手册 > 主體

PHP fopen函数读写txt文件实现程序

WBOY
發布: 2016-05-25 16:47:16
原創
1861 人瀏覽過

下面我们利用几个实例来总结了利用php fopen函数来实现文件的读写操作,有需要学习的朋友可参考参考.

简单的参考fopen函数fopen() 函数打开文件或者 URL.

如果打开失败,本函数返回 FALSE.

语法

fopen(filename,mode,include_path,context)

创建一个文件的实例代码如下:

<?php
if (!file_exists("test.txt")) { //如果文件不存在(默认为当前目录下)
    $fh = fopen("test.txt", "w");
    fclose($fh); //关闭文件
    
}
?>
登入後複製

利用php的读写文本文档的功能来实现修改和编辑robots文件实例代码如下:

<?php
function get_txt($robots_file)
//定义函数,内容用{}括起来
{
    if (file_exists($robots_file))
    //如果文件存在,读取其中的内容
    {
        $fp = @fopen($robots_file, "r");
        //r是read的缩写,代表读取的意思,以只读方式打开文件
        if ($fp) {
            while (!feof($fp)) { //如果没有到文件尾部
                $robots_txt = fgets($fp, 4096); //逐行读取
                $robots_all = $robots_all . $robots_txt; //将数据保存到$robots_all里面
                
            }
            return ($robots_all); //返回所有内容
            fclose($fp); //关闭文件
            
        }
    }
}
function put_txt($robots_txt) {
    $fp = fopen("robots.txt", "w");
    //w是write的缩写,代表写入的意思,以写入的方式打开文件
    fputs($fp, $robots_txt);
    //输出文本到文件
    fclose($fp);
}
?>
登入後複製
<?php
$edit = $_GET["edit"];
$txt = $_POST["txt"];
$get_txt = get_txt("robots.txt");
//调用刚才定义的函数打开robots文件.
if ($edit == "write") {
    put_txt($txt);
    echo "成功保存 <a href=robots-editer.php>返回</a>";
} else {
    echo "成功读取<a href=robots.txt target=_blank>robots.txt</a> <a href=writer.php>返回</a>";
}
?>   
<?php
if ($edit == "") {
?>
<form name="form1" action="?edit=write" method="post">  
<textarea name="txt" cols="160" rows="30"><?php
    echo $get_txt; ?> </textarea>  
<br />  
<input name="submit" value="保存" type="submit" />  
</form>  
<?php
}
?>
登入後複製

通过PHP读取文本文档counter.txt里的数据,并+1保存到文本文档中.

新建counter.php文档,输入如下代码,跟ASP不同的是PHP里的单行注释是用//或者#,多行注释用/* */来实现:

实例代码如下:

<?php
function get_hit($counter_file)
//定义函数,内容用{}括起来,学过编程的人应该看出来了,跟C语言有点相似
{
    $count = 0;
    //将计数器归零,Php里的变量前面加上$号
    if (file_exists($counter_file))
    //如果计数器文件存在,读取其中的内容
    {
        $fp = fopen($counter_file, "r");
        //r是read的缩写,代表读取的意思,以只读方式打开文件
        $count = 0 + fgets($fp, 20);
        /*读取前20位数赋值给count变量,由于fgets()函数读取的是字符串,所以需要在前面+0来转换为整数,
         这一点跟ASP就不同了,ASP中字符串可以直接跟整型进行运算,而不用转换.*/
        fclose($fp);
        //关闭文件
        
    }
    $count++;
    //增加计数,这一点跟C就非常相似了
    $fp = fopen($counter_file, "w");
    //w是write的缩写,代表写入的意思,以写入的方式打开文件
    fputs($fp, $count);
    //输出计数值到文件
    fclose($fp);
    return ($count);
    //返回计数值
    
}
?>
登入後複製
<?php
$hit = get_hit("counter.txt");
//调用刚才定义的函数处理counter.txt文档,并把结果赋值给hit变量.
echo "您是第<b>" . "$hit" . "</b>位访客!";
//输出结果.PHP与ASP的区别在于:ASP的连字符是"&",而Php的连字符是".".
?>
登入後複製

同样在需要调用的PHP文档中插入这个文件:

<?php
include ("counter.php");
?>
登入後複製
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!