Hope is a Dream. Dream is a Hope.

非公開ブログは再開しました。

いきおいでPHPを勉強する。その11

ファイルをコピーする

ファイルを自動バックアップする

<html>
<head>
<title>ファイルを自動バックアップする</title>
</head>
<body>
<?php
// ロケールを設定する
setlocale(LC_TIME, "ja");

// コピー元ファイル名
$fname = "test.txt";
// バックアップファイル名を取得する
$date = strftime("%Y%m%d", time() - 24 * 3600);
$fname_bak = $date.".bak";

// バックアップファイルがないときはバックアップファイルを作成する
if (!file_exists($fname_bak)) {
    // ファイルをコピーして完了メッセージを表示する
    if (copy($fname , $fname_bak)) {
        echo "<p> $fname$fname_bak にコピーしました:";
    }
    else {
        echo "<p> $fname から $fname_bak のコピーが失敗しました:";
    }
}
else {
    echo "<p> すでに $fname_bak にバックアップ済みです";
}

?>
</body>
</html>

ファイル名を変更する

<html>
<head>
<title>ファイル名を変更する</title>
</head>
<body>
<?php
// 変更元ファイル名
$fname = "test.txt";

// 変更先ファイル名
$fname_to = "test_rename.txt";

// ファイル名を変更して完了メッセージを表示する
if (rename($fname , $fname_to)) {
    echo "<p> $fname$fname_to に変更しました:";
}
else {
    echo "<p> $fname から $fname_to への変更が失敗しました:";
}

?>
</body>
</html>

ファイルを削除する

<html>
<head>
<title>ファイルを削除する</title>
</head>
<body>
<?php
// 削除ファイル名
$fname = "test.txt";

// ファイルを削除して完了メッセージを表示する
if (unlink($fname)) {
    echo "<p> $fname を削除しました:";
}
else {
    echo "<p> $fname の削除が失敗しました:";
}

?>
</body>
</html>

ファイルの存在を確認してから削除する

<html>
<head>
<title>ファイルの存在を確認してから削除する</title>
</head>
<body>
<?php
// ファイルが存在するときのみ削除する
function fdel($file) {
    // ファイルが存在するか調べる
    if (file_exists($file)) {
        // ファイルを削除する
        if (unlink($file)) {
            return TRUE;
        }
        else {
            return FALSE;
        }
    }
    else {
        echo "<p>このファイルは存在しません:".$file;
        return FALSE;
    }
}

// 削除ファイル名
$fname = "test.txt";

// ファイル削除するユーザ定義関数を呼び出す
if (fdel($fname)) {
    echo "<p> $fname を削除しました:";
}
else {
    echo "<p> $fname の削除が失敗しました:";
}

?>
</body>
</html>