【PHP8.x】copy関数の使い方
copy関数は、指定されたファイルを別の場所にコピーする関数です。この関数は、既存のファイルの内容を保ちながら、新しい名前や別のパスで複製を作成したい場合に利用されます。
この関数を使用するには、まず$source
引数にコピーしたい元のファイルのパスを指定します。次に、$destination
引数に新しいコピーファイルの作成場所とファイル名を指定します。たとえば、'data.txt'
というファイルを'backup_data.txt'
として保存する場合などに使用できます。$context
というオプションの引数もありますが、これは特定のストリーム操作が必要な場合に利用するもので、通常は省略可能です。
copy
関数は、ファイルのコピー処理が成功した場合には真(true
)を返し、何らかの理由で失敗した場合には偽(false
)を返します。コピーが失敗する典型的な理由としては、コピー先のディレクトリに対する書き込み権限がない場合や、コピー元ファイルが存在しない場合などが挙げられます。失敗時には、PHPが警告(E_WARNING
)を発行することがあります。
この関数はファイルのみを対象とし、ディレクトリをその内容ごとコピーする機能は持っていません。また、$destination
で指定されたパスに既にファイルが存在する場合、そのファイルは警告なく新しい内容で上書きされますので、意図しないデータの消失を防ぐためにも、コピー先のパスは慎重に指定してください。ネットワーク上のファイルや圧縮ファイルなど、様々な種類のファイルシステムやプロトコルに対しても、適切なストリームラッパーが有効であればcopy
関数を利用できます。
基本的な使い方
構文(syntax)
copy(string $from, string $to, ?resource $context = null): bool
引数(parameters)
string $from, string $to, ?resource $context = null
- string $from: コピー元のファイルパスを指定する文字列
- string $to: コピー先のファイルパスを指定する文字列
- ?resource $context = null: ファイル操作のコンテキストを指定するリソース。省略可能
戻り値(return)
bool
ファイルコピー操作が成功した場合は true
を、失敗した場合は false
を返します。