php copyを使ってファイルをコピーする

  • 作成日 2021.12.04
  • php
php copyを使ってファイルをコピーする

phpで、copyを使用して、ファイルをコピーするサンプルコードを記述してます。phpのバージョンは8.0です。

環境

  • OS  CentOS Stream release 8
  • php 8.0.0
  • nginx 1.14.1

copy使い方

copyを使用すれば、ファイルをコピーすることが可能です。

copy( コピー元のファイルパス , コピー先のファイルパス );
// 成功でtrue , 失敗でfalseを返す

以下は、すでにあるファイル「hoge.txt」をコピーして「hoge1.txt」を作成するサンプルコードとなります。

<?php

echo copy('hoge.txt', 'hoge1.txt') ? '成功' : '失敗';
// コピー先のファイルが既に存在しててもエラーにならず上書きされます。

実行結果

コピー元のファイルが存在しない場合は、警告となります。

<?php

echo copy('hoge2.txt', 'hoge1.txt') ? '成功' : '失敗';

// PHP Warning:  copy(hoge2.txt): Failed to open stream: No such file or directory

リネームする場合は、renameを使用します。

rename( 元のファイルパス , リネーム後のファイルパス );
// 成功でtrue , 失敗でfalseを返す

renameサンプルコード

<?php

echo rename('hoge.txt', 'hoge1.txt') ? '成功' : '失敗';
// hoge1.txtが存在する場合は、上書きされます。

実行結果 hoge.txtがリネームされてhoge1.txtが作成されます。