您现在的位置是:首页 > 网站制作 > PHPPHP
PHP 文件处理
胜于蓝2013-12-31【PHP】人已围观
简介fopen() 函数用于在 PHP 中打开文件。打开文件fopen() 函数用于在 PHP 中打开文件。此函数的第一个参数含有要打开的文件的名称,第二个参数规定了使用哪种模式来打开文件:<htm
fopen() 函数用于在 PHP 中打开文件。
打开文件
fopen() 函数用于在 PHP 中打开文件。
此函数的第一个参数含有要打开的文件的名称,第二个参数规定了使用哪种模式来打开文件:
<html><body>
<?php
$file=fopen("welcome.txt","r");
?>
</body>
</html>
文件可能通过下列模式来打开:
模式 | 描述 |
---|---|
r | 只读。在文件的开头开始。 |
r+ | 读/写。在文件的开头开始。 |
w | 只写。打开并清空文件的内容;如果文件不存在,则创建新文件。 |
w+ | 读/写。打开并清空文件的内容;如果文件不存在,则创建新文件。 |
a | 追加。打开并向文件末尾进行写操作,如果文件不存在,则创建新文件。 |
a+ | 读/追加。通过向文件末尾写内容,来保持文件内容。 |
x | 只写。创建新文件。如果文件已存在,则返回 FALSE 和一个错误。 |
x+ | 读/写。创建新文件。如果文件已存在,则返回 FALSE 和一个错误。 |
注释:如果 fopen() 函数无法打开指定文件,则返回 0 (false)。
实例
如果 fopen() 函数不能打开指定的文件,下面的实例会生成一段消息:
<html><body>
<?php
$file=fopen("welcome.txt","r") or exit("Unable to open file!");
?>
</body>
</html>
关闭文件
fclose() 函数用于关闭打开的文件:
<?php$file = fopen("test.txt","r");
//执行一些代码
fclose($file);
?>
检测文件末尾(EOF)
feof() 函数检测是否已到达文件末尾(EOF)。
在循环遍历未知长度的数据时,feof() 函数很有用。
注释:在 w 、a 和 x 模式下,您无法读取打开的文件!
if (feof($file)) echo "文件结尾";逐行读取文件
fgets() 函数用于从文件中逐行读取文件。
注释:在调用该函数之后,文件指针会移动到下一行。
实例
下面的实例逐行读取文件,直到文件末尾为止:
<?php$file = fopen("welcome.txt", "r") or exit("无法打开文件!");
// 读取文件每一行,直到文件结尾
while(!feof($file))
{
echo fgets($file). "<br>";
}
fclose($file);
?>
逐字符读取文件
fgetc() 函数用于从文件中逐字符地读取文件。
注释:在调用该函数之后,文件指针会移动到下一个字符。
实例
下面的实例逐字符地读取文件,直到文件末尾为止:
<?php$file=fopen("welcome.txt","r") or exit("无法打开文件!");
while (!feof($file))
{
echo fgetc($file);
}
fclose($file);
?>
PHP对逗号分隔符文件(*.csv)的处理。
当如果你需要处理的数据比较少时可以使用csv文件(这是一类文本文件)存储数据更加便利。
比如在php代码同目录下有一个a.csv文件,内容如下:(注意逗号是半角英文)
小王,小红,小明,小凡
php代码如何:
<?php $fh=fopen("a.csv","r");//这里我们只是读取数据,所以采用只读打开文件流 $arr=fgetcsv($fh);//这个函数就是读取CSV文件的函数,他把文本读入后转为数组存储在$arr中 fclose($fh); foreach($arr as $key=>$value){echo $value;}//循环输出所有的值 ?>
注意:CSV文本编码必须和HTML的编码相同,否则用php写到HTML中,用户会看到乱码。也可以使用 iconv 转码函数进行转码。
如果打开一个文件,文件名为中文,如果系统编程和当前文档编码不一致,会导致文件找不到无法打开,解决方法是用 iconv 函数编码转换成一致,如下:
$fpath=iconv('UTF-8','GB2312',"题库.csv"); $file=fopen($fpath,"r") or exit("无法打开文件!"); //此处省略相关操作 fclose($file);
用相对路径打不开子目录中的文件时,可用绝对路径打开,如下:
$file=fopen(dirname(__FILE__).'\\files\\tk.csv',"r") or exit("无法打开文件!"); //此处省略相关操作 fclose($file);
Tags:
很赞哦! ()
相关文章
随机图文
PHP 多维数组
一个数组中的值可以是另一个数组,另一个数组的值也可以是一个数组。依照这种方式,我们可以创建二维或者三维数组:实例<?php // 二维数组: $cars = array ( array("Volvo",100,9PHP 循环 - For 循环
for 循环for 循环用于您预先知道脚本需要运行的次数的情况。语法for (初始值; 条件; 增量){ 要执行的代码;}参数: 初始值:主要是初始化一个变量值,用于设置一个计数器(但可以PHP 语法
PHP 脚本在服务器上执行,然后将纯 HTML 结果发送回浏览器。基本的 PHP 语法PHP 脚本可以放在文档中的任何位置。PHP 脚本以 <?php 开始,以 ?> 结束:<?php // PHP 代码 ?>PHP 文PHP 命名空间(namespace)
PHP 命名空间(namespace)是在PHP 5.3中加入的,如果你学过C#和Java,那命名空间就不算什么新事物。 不过在PHP当中还是有着相当重要的意义。PHP 命名空间可以解决以下两类问题: