PHP | fwrite 函數

怎樣寫入數據到文件

最近更新時間 2021-01-18 19:29:00

fwrite 函數寫入文件。

fwrite() 函數可安全用於二進制文件。可傳入需要寫入字節的長度,默認為所有數據。操作成功後返回寫入的字節數量。

函數定義

fwrite ( resource $handle , string $string , int $length = ? ) : int
// 源文件位於:ext/standard/file.c
# 函數定義

PHPAPI PHP_FUNCTION(fwrite)
{
  ...
  if (maxlen_is_null) {
    num_bytes = inputlen;
  } else if (maxlen <= 0) {
    num_bytes = 0;
  } else {
    num_bytes = MIN((size_t) maxlen, inputlen);
  }

  if (!num_bytes) {
    RETURN_LONG(0);
  }

  PHP_STREAM_TO_ZVAL(stream, res);

  ret = php_stream_write(stream, input, num_bytes);
  if (ret < 0) {
    RETURN_FALSE;
  }

  RETURN_LONG(ret);
}

參數

  • checkhandle - 文件指針。
  • checkstring - 需要寫入的數據。
  • checklength - 如果指定了 length,當寫入了 length 個字節或者寫完了 string 以後,寫入就會停止。

返回值

  • checkbool - 返回寫入的字符數,失敗時返回 false。

示例1: - 使用 fwrite() 函數寫入數據。

<?php
/**
 * PHP fwrite() 函數寫入數據。
 *
 * @since Version 1.0.0
 * @filesource
 */

// 打開文件
$fileName = 'foo.txt';
$handle = fopen($fileName, 'r+');

// 截取到2個字符
$len = fwrite($handle, "Fooo");

echo 'Length::'.$len.PHP_EOL;

// 關閉文件
fclose($handle);
Length::4

注意:會覆蓋以前的文件內容。

rss_feed