PHP | ftruncate 函數
怎樣截取文件
最近更新時間 2021-01-18 18:43:57
ftruncate 函數將文件截斷到給定的長度。
ftruncate() 函數接收兩個參數。並將文件大小截取為 size。成功則返回 true。打開的文件需要有寫權限,否則返回 false。
函數定義
ftruncate ( resource $handle , int $size ) : bool
// 源文件位於:ext/standard/file.c
# 函數定義
PHP_FUNCTION(ftruncate)
{
...
if (size < 0) {
zend_argument_value_error(2, "must be greater than or equal to 0");
RETURN_THROWS();
}
PHP_STREAM_TO_ZVAL(stream, fp);
if (!php_stream_truncate_supported(stream)) {
php_error_docref(NULL, E_WARNING, "Can't truncate this stream!");
RETURN_FALSE;
}
RETURN_BOOL(0 == php_stream_truncate_set_size(stream, size));
}
參數
- checkhandle - 文件指針。
- checksize - 截取的長度。
返回值
- checkbool - 成功時返回 true, 或者在失敗時返回 false。
示例1: - 使用 ftruncate() 函數截斷文件到給定的長度。
<?php
/**
* PHP ftruncate() 函數截斷文件到給定的長度。
*
* @since Version 1.0.0
* @filesource
*/
// 打開文件
$fileName = 'foo.txt';
$handle = fopen($fileName, 'r+');
// 截取到2個字符
$ret = ftruncate($handle, 3);
var_dump($ret);
// 關閉文件
fclose($handle);
bool(true)
如果文本中包含中文,可能出現亂碼。