PHP は、幅広いアプリケーションで広く使用されているサーバーサイド プログラミング言語です。一般的なタスクの 1 つはファイルのコピーです。ファイルのコピーとは、ファイルをソース パスから宛先パスにコピーするプロセスを指します。
PHP にはさまざまなファイル コピー関数がありますが、この記事ではそのうちの 3 つ、copy()、rename()、file_put_contents() について簡単に紹介します。
copy() 関数は、PHP で最もよく使用されるファイル コピー関数の 1 つです。その構文は次のとおりです。
bool copy ( string $source , string $dest [, resource $context ] )
このうち、$source はソース パス、$dest は宛先パス、$context はオプションのパラメータであり、コンテキスト リソース パラメータを示します。
copy() 関数は、操作が成功したかどうかを示すブール値を返します。成功した場合は true、失敗した場合は false を返します。
次は、copy() 関数を使用してファイルをコピーする例です:
$source_file = '/var/www/html/source.txt'; $dest_file = '/var/www/html/dest.txt'; if (copy($source_file, $dest_file)) { echo "文件拷贝成功!"; } else { echo "文件拷贝失败!"; }
上の例では、copy() 関数はソース ファイル source.txt をターゲットにコピーします。 file dest.txt、コピーが成功した場合は「ファイルコピー成功!」が画面に出力され、失敗した場合は「ファイルコピー失敗!」が画面に出力されます。
rename() 関数は、ファイルのコピーにも使用できます。その構文は次のとおりです。
bool rename ( string $oldname , string $newname [, resource $context ] )
このうち、$oldname はソース パス、$newname はターゲット パス、$context はオプションのパラメータであり、コンテキスト リソース パラメータを示します。
rename() 関数の戻り値もブール値で、操作が成功したかどうかを示します。
次は、rename() 関数を使用してファイルをコピーする例です。
$source_file = '/var/www/html/source.txt'; $dest_file = '/var/www/html/dest.txt'; if (rename($source_file, $dest_file)) { echo "文件拷贝成功!"; } else { echo "文件拷贝失败!"; }
上の例では、rename() 関数はソース ファイル source.txt の名前を dest に変更します。 txt. 成功した場合は「ファイルコピーに成功しました!」と画面に出力され、成功しなかった場合は「ファイルコピーに失敗しました!」と画面に出力されます。
rename() 関数を使用してファイルをコピーすると、ソース ファイルが削除されることに注意してください。
file_put_contents() 関数は、よく使用されるもう 1 つのファイル コピー関数であり、PHP5.1 以降のバージョンで使用できます。その構文は次のとおりです。
int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] )
このうち、$filename はターゲット パス、$data はファイルに書き込まれるデータ、$flags はオプションのパラメータで、ファイル書き込みモードを指定します。 context はオプションのパラメータであり、コンテキスト リソース パラメータを表します。
file_put_contents()関数の戻り値はファイルに書き込まれたバイト数で、書き込みに失敗した場合はfalseが返されます。
次は、file_put_contents() 関数を使用してファイルをコピーする例です。
$source_file = '/var/www/html/source.txt'; $dest_file = '/var/www/html/dest.txt'; if (file_put_contents($dest_file, file_get_contents($source_file))) { echo "文件拷贝成功!"; } else { echo "文件拷贝失败!"; }
上の例では、file_put_contents() 関数はソース ファイル source.txt の内容を読み取ります。成功した場合は「ファイルコピー成功!」、失敗した場合は「ファイルコピー失敗!」と画面に出力されます。
ターゲット ファイルが既に存在する場合、file_put_contents() 関数は元のファイルの内容を上書きすることに注意してください。
上記では、PHP でよく使用される 3 つのファイル コピー関数を紹介しました。それぞれに独自の特徴があります。 copy() 関数は最も一般的に使用されるファイル コピー関数であり、rename() 関数はファイルの名前を変更できます。file_put_contents() 関数は PHP5.1 以降のバージョンで提供される強力なファイル書き込み関数です。実際の開発では、実際のニーズに基づいて使用する関数を選択できます。
以上がPHPアプリケーションのファイルコピー機能の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。