Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【PHP8.x】SplTempFileObject::ftruncate()メソッドの使い方

ftruncateメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

ftruncateメソッドは、SplTempFileObjectオブジェクトが内部で管理するデータ(一時ファイルやメモリバッファ)のサイズを指定した長さに変更するメソッドです。このメソッドは、PHPの標準ライブラリ(SPL)の一部であるSplTempFileObjectクラスに定義されています。SplTempFileObjectクラスは、プログラムが一時的に必要とするデータをメモリ上または一時ファイルとして効率的に扱うための機能を提供し、通常、一時的なデータの読み書きや処理に利用されます。

このftruncateメソッドは、lengthという整数型の引数を一つ受け取ります。このlength引数には、変更後のデータサイズをバイト単位で指定します。もし指定されたlengthが現在のデータサイズよりも小さい場合、データは指定された長さまで切り詰められ、超過した部分は削除されます。逆に、lengthが現在のデータサイズよりも大きい場合、データは指定された長さまで拡張されます。この際、新しく追加される領域はヌルバイト(null byte)で埋められます。この操作は、データの読み書き位置を示すファイルポインタの位置には影響を与えません。

メソッドの実行に成功した場合はブール値のtrueを、失敗した場合はfalseを返します。この機能は、SplTempFileObjectで扱うデータファイルの容量を効率的に調整したい場合や、不要になったデータを破棄してサイズを最適化したい場合に特に有用です。

構文(syntax)

1<?php
2$tempFile = new SplTempFileObject();
3$tempFile->ftruncate(0); // ファイルサイズを指定したバイト数に切り詰めます
4?>

引数(parameters)

int $size

  • int $size: ファイルを切り詰める(truncate)バイト単位のサイズを指定する整数

戻り値(return)

bool

ftruncateメソッドは、ファイルのサイズを指定した長さに切り詰める処理が成功したかどうかを真偽値(bool)で返します。成功した場合はtrue、失敗した場合はfalseが返されます。

関連コンテンツ