首页 > php函数 > php读取本地文件常用函数

php读取本地文件常用函数

下面我们以.txt文件为实例来介绍php读取本地文件的函数,读取文件我们可以利用fopen或file_get_contents来读取,file_get_contents更简单而fopen需要fread配合才可以显示读出的内容。

1.首先来介绍一下fopen()函数

下面我们给出了一个直接打开本地文件的代码demo,必要的地方我们都已经加上了注释:


//直接打开一个本地文件的实例代码   

<?php
//假若我们本地的文件是一个名为xmlas.txt的文本
$filedemo = "xmlas.txt";
$fpdemo = fopen($filedemo, "r");
if ($fpdemo) {
while (!feof($fpdemo)) {
//1000读取的字符数
$datademo = fread($fpdemo, 1000);
}
fclose($fpdemo);
}
echo $datademo;
?>

2.使用file_get_contents() 函数将整个文件在一个字符串中输出:

假若我们的xmlas.txt文本文件中有这样一句话:现在的电影越来越没激情,想要全部高潮请看日本爱情

动作片!

那么我们file_get_contents() 函数的实例代码便如下:

<?php
echo file_get_contents("xmlas.txt");
//此时输出的内容便为xmlas.txt中的内容:
//现在的电影越来越没激情,想要全部高潮请看日本爱情动作片!
?>

3.如何读取本地的一个文件夹而不是一个单独文件:

请看下面的实例代码,在实例中我们将读取一个名为xmlas的文件夹:

<?php
$dirdemo = opendir('/xmlas');
while (($filedemo = readdir($dirdemo)) != false) {
    if ($filedemo != "." && $filedemo != "..") {
        $nsdemo = explode('.', $filedemo);
        echo $nsdemo[0];
    }
}
closedir($dirdemo);
?>

4.我们还可以利用fopen来写文件

<?php
/**
 *用fopen写入文件
 *@param string $filename
 *@param string $contents
 *@return boolean
 */
function wirte($filename, &$contents) {
    $fp = fopen($filename, "wb");
    if ($fp) {
        flock($fp, LOCK_EX); //同一时间锁定文件,只能一个人操作
        fwrite($fp, $contents);
        flock($fp, LOCK_UN); //保存数据握进行解锁文件并保存
        fclose($fp);
        return true;
    } else {
        return false;
    }
}
?>

这样我只要利用fopen配合fwrite就可以实现文件读写了。

注意:l打开文件

在打开文件文件之前,我们需要知道这个文件的路径,以及此文件是否存在。

用$_SERVER["DOCUMENT_ROOT"]内置全局变量,来获得站点的相对路径。如下:


$root = $_SERVER["DOCUMENT_ROOT"];

 

在用函数file_exists()来检测文件是否存在。如下:


If(!file_exists("$root/order.txt")){echo '文件不存在';}

这样可能更合理更实用哦。


本文地址:http://www.phprm.com/function/51223.html

转载随意,但请附上文章地址:-)

标签:explode fopen opendir

相关文章

发表留言