English | 简体中文 | 繁體中文
查询

SplFileObject::ftruncate()函数—用法及示例

「 截断文件到指定的长度 」


函数名称:SplFileObject::ftruncate()

适用版本:PHP 5 >= 5.1.0, PHP 7

函数描述:SplFileObject::ftruncate() 方法用于截断文件到指定的长度。

语法:public SplFileObject::ftruncate(int $size) : bool

参数:

  • $size:要截断文件的长度,以字节为单位。

返回值:

  • 如果成功截断文件,则返回 true,否则返回 false。

示例:

$file = new SplFileObject('example.txt', 'w+');

// 写入内容到文件
$file->fwrite("Hello, World!");

// 获取文件大小
$size = $file->getSize();

echo "文件大小:{$size} 字节" . PHP_EOL;  // 输出:文件大小:13 字节

// 截断文件到指定长度
$file->ftruncate(5);

// 获取截断后的文件大小
$truncatedSize = $file->getSize();

echo "截断后的文件大小:{$truncatedSize} 字节" . PHP_EOL;  // 输出:截断后的文件大小:5 字节

// 读取截断后的内容
$file->rewind();
$content = $file->fread($truncatedSize);

echo "截断后的内容:{$content}" . PHP_EOL;  // 输出:截断后的内容:Hello

// 关闭文件
$file = null;

在上面的示例中,我们使用了 SplFileObject 类来打开一个名为 "example.txt" 的文件。然后,我们使用 fwrite() 方法将内容写入文件,并使用 getSize() 方法获取文件的大小。接下来,我们使用 ftruncate() 方法将文件截断到指定的长度(5 字节),并再次使用 getSize() 方法获取截断后的文件大小。最后,我们使用 fread() 方法读取截断后的内容,并输出到屏幕上。最后,我们关闭了文件。

请注意,使用 ftruncate() 方法时,需要确保文件已以可写模式打开(例如,使用 'w+' 模式)。

补充纠错
上一个函数: SplFileObject::fwrite()函数
下一个函数: SplFileObject::ftell()函数
热门PHP函数
分享链接