Maison > développement back-end > tutoriel php > 学习php的fwrite函数

学习php的fwrite函数

WBOY
Libérer: 2016-07-25 09:10:37
original
1680 Les gens l'ont consulté
本文为大家介绍php的fwrite函数的用法,供大家参考。PHP fwrite() fwrite() 函数用于向文件写入字符串,成功返回写入的字符数,否则返回 FALSE 。语法: int fwrite( res

本文为大家介绍php的fwrite函数的用法,供大家参考。

PHP fwrite() fwrite() 函数用于向文件写入字符串,成功返回写入的字符数,否则返回 FALSE 。

语法: int fwrite( resource handle, string string [, int length] ) fwrite() 把 string 的内容写入文件指针 handle 处。 参数说明: 参数 说明 handle 要写入字符串的文件指针,一般由 fopen() 函数创建 data 要写入的字符串 length 可选,规定要写入的最大字节数

如果指定了可选参数 length,当写入了 length 个字节或者写完了 string 以后,写入就会停止。

例子:

复制代码 代码如下:

$fh = fopen($filename, "w"); echo fwrite($fh, $word); // 输出:6 fclose($fh); ?>

执行该例子程序,在程序同目录下,file.txt 文件内容为:你好!

使用 length 参数 上面的例子中,如果使用了 length 参数,则至多写入 length 个字符串: echo fwrite($fh, $word, 4); // 输出:4

PHP fwrite 追加写入 对文件的追加写入,实际与 fwrite 函数无关,而与 fopen 函数打开文件的模式有关。当 fopen 打开文件时,mode 参数选择 a ,则表示在文件后面追加写入:

复制代码 代码如下:

$fh = fopen($filename, "a"); echo fwrite($fh, $word); fclose($fh); ?>

PHP fwrite 换行写入 如果要在文件中实现换行写入,只需要在写入内容中需要换行的地方添加换行符 n 即可:

复制代码 代码如下:

$fh = fopen($filename, "a"); echo fwrite($fh, $word); fclose($fh); ?>

上面的例子在内容结尾添加了 n 换行符。要让 n 在写入文件时表示换行,写入时需使用双引号(如上面例子),如果使用单引号,n 字符不会被解释为换行而是当做 n 字符串,点击查看:PHP 字符串中单引号与双引号的区别。

n 已经是真正意义上的换行,在 windows 操作系统上如果要模拟回车换行(即用写字板打开文件时,不是黑方块而是一行一行的列出),可以在 n 前面加入 r 回车符:

复制代码 代码如下:

PHP fwrite 写入权限 当打开一个已经存在的文件(通常是追加写入模式下),有必要检测该文件是否具有写入权限,从而避免一个系统错误的发生。使用 is_writable 函数检测文件是否可写。

下面是追加写入模式下一个比较严格检查的例子:

复制代码 代码如下:

// 确定文件存在并且可写 if (is_writable($filename)) { //打开文件 if (!$fh = fopen($filename, 'a')) { echo "不能打开文件 $filename"; exit; } // 写入内容 if (fwrite($fh, $word) === FALSE) { echo "不能写入到文件 $filename"; exit; } echo "成功地将 $word 写入到文件 $filename"; fclose($fh); } else { echo "文件 $filename 不可写"; } ?>

PHP fwrite 函数只是执行向文件写入字符串的动作,实际它的行为结果取决于 fopen 函数更多一些。如果想一次性将字符串写入或追加至文件,file_put_contents 函数可能是更优的选择。

PHP file_put_contents 函数:将字符串写入或追加到文件 PHP file_put_contents() 函数是一次性向文件写入字符串或追加字符串内容的最合适选择。

file_put_contents() file_put_contents() 函数用于把字符串写入文件,成功返回写入到文件内数据的字节数,失败则返回 FALSE。

语法: int file_put_contents ( string filename, string data [, int flags [, resource context]] )

参数说明: 参数 说明 filename 要写入数据的文件名 data 要写入的数据。类型可以是 string,array(但不能为多维数组),或者是 stream 资源 flags 可选,规定如何打开/写入文件。可能的值: FILE_USE_INCLUDE_PATH:检查 filename 副本的内置路径 FILE_APPEND:在文件末尾以追加的方式写入数据 LOCK_EX:对文件上锁 context 可选,Context是一组选项,可以通过它修改文本属性

例子:

复制代码 代码如下:

运行该例子,浏览器输出: 18 而 test.txt 文件(与程序同目录下)内容则为:This is something.。

提示 如果文件不存在,则创建文件,相当于fopen()函数行为。 如果文件存在,默认将清空文件内的内容,可设置 flags 参数值为 FILE_APPEND 以避免(见下)。 本函数可安全用于二进制对象。

以追加形式写入内容 当设置 flags 参数值为 FILE_APPEND 时,表示在已有文件内容后面追加内容的方式写入新数据: 执行程序后,test.txt 文件内容变为:This is something.This is another something. file_put_contents() 的行为实际上等于依次调用 fopen(),fwrite() 以及 fclose() 功能一样。

参考阅读

PHP fopen:文件创建与打开。 PHP fwrite:向文件写入字符串。 PHP close:关闭一个打开的文件。 PHP file_get_contents:把整个文件内容读入一个字符串。 PHP 检查文件能否读写执行 is_readable、is_writable 与 is_executable 函数

is_readable() 函数用于检查文件是否可读,is_writable() 函数用于检查文件是否可写入,is_executable() 函数用于检查文件是否可执行。 is_readable() is_readable() 函数用于检查文件是否可读,指定的文件或目录存在并且可读则返回 TRUE,否则返回 FALSE。

语法: bool is_readable( string filename ) 例子:

复制代码 代码如下:

is_writable() is_writable() 函数用于检查文件是否可写入,如果文件存在并且可写则返回 TRUE,否则返回 FALSE。

语法: bool is_writable( string filename ) filename 参数可以是一个允许进行是否可写检查的目录名。

例子:

复制代码 代码如下:

is_executable() is_executable() 函数用于检查文件是否可执行,如果文件存在且可执行则返回 TRUE,否则返回 FALSE。用法请参考 is_writable()。



Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal