Home >Backend Development >PHP Tutorial >Detailed example of php fwrite() function appending and newline writing

Detailed example of php fwrite() function appending and newline writing

怪我咯
怪我咯Original
2017-06-01 10:35:437563browse

PHP fwrite() function

fwrite() function is used to write a string to a file and returns the number of characters written successfully, otherwise it returns FALSE.

Syntax:

int fwrite( resource handle, string string [, int length] )

fwrite() writes the contents of string to the file pointer handle.

Parameter description:


Parameter Description
handle Required. Specifies the open file to write to. Generally created by the fopen() function
string Required. Specifies the string to be written to the open file.
length Optional. Specifies the maximum number of bytes to be written.


ps: If the optional parameter length is specified, when length bytes are written or after the string is written , writing will stop.

Example

<?php
// 要写入的文件名字
$filename = &#39;file.txt&#39;;
// 写入的字符
$word = "你好!";
$fh = fopen($filename, "w");
echo fwrite($fh, $word);    // 输出:6
fclose($fh);
?>

Execute this example program. In the same directory as the program, the content of the file.txt file is: Hello!

Use the length parameter

In the above example, if the length parameter is used, at most length strings will be written:

echo fwrite($fh, $word, 4);    // 输出:4

PHP fwrite append writing

The append writing to the file actually has nothing to do with the fwrite function, but is related to the mode of opening the file by the fopen function. When fopen opens a file, the mode parameter selects a, which means appending to the file:

<?php
$filename = &#39;file.txt&#39;;
$word = "你好!";

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

PHP fwrite newline writing

If you want to implement it in the file To write with a newline, you only need to add the newline character n where a newline is needed in the written content:

<?php
$filename = &#39;file.txt&#39;;
$word = "你好!n";

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

The above example adds n newline characters at the end of the content. To make n represent a newline when writing a file, you need to use double quotes when writing (as in the example above). If you use single quotes, the n character will not be interpreted as a newline but as an n string. Click to view: PHP string The difference between single quotes and double quotes.

n is already a real line feed. If you want to simulate a carriage return and line feed on the Windows operating system (that is, when you open a file with WordPad, it will not be a black square but listed line by line). You can use n Add r and carriage return in front:

<?php
$word = "你好!rn";
?>

PHP fwrite write permission

When opening an existing file (usually in append writing mode), it is necessary Check whether the file has write permission to avoid a system error. Use the is_writable function to check whether the file is writable.

The following is an example of strict checking in append writing mode. The code is as follows:

<?php
$filename = &#39;file.txt&#39;;
$word = "你好!n";

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

PHP fwrite function only performs the action of writing strings to the file. The actual result of its behavior depends on More about the fopen function.

【Recommended related articles】:

1.Detailed explanation of the php fwrite() function writing file example

2 .What should I do if the newline character does not work when the php fwrite() function writes newlines?

The above is the detailed content of Detailed example of php fwrite() function appending and newline writing. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn