以前に作成した GreatNotepad
クラスを修正します。
backup
メソッドを追加する
GreatNotepad
クラスの仕様は以下のとおりです。
メソッド | 処理内容 |
---|---|
save |
$filename 引数で受け取ったファイル名に $input_string プロパティの内容を保存する |
load |
$filename 引数で受け取ったファイル名を読み込んで、読み込んだファイルの内容を $input_string プロパティに代入する |
backup |
$filename 引数で受け取ったファイルのコピーを作成するただしコピー先のファイル名は $filename20210101123456 のようにファイル名の末尾にタイムスタンプ(システム日時)を付与するstatic メソッドとして定義する |
問題 10
次のプログラム( notepad_runner10.php
)があります。
notepad_runner10.php
<?php
require_once("GreatNotepad.php");
GreatNotepad::backup("my_file.txt");
次の実行結果のとおり動作するプログラム( GreatNotepad.php
)を作成してください。
実行結果
$ php notepad_runner10.php
ここではカレントフォルダに以前に作成した
my_file.txt
が存在するものとします。
カレントフォルダに my_file.txt
ファイルをコピーした my_file.txt20210101123456
ファイルが生成されていることを確認します(ファイル名のタイムタンプの部分は変化します)。
GreatNotepad.php
<?php
require_once("SimpleNotepad.php");
class GreatNotepad extends SimpleNotepad
{
public function save($filename)
{
file_put_contents($filename, $this->input_string);
}
public function load($filename)
{
$this->input_string = file_get_contents($filename);
}
# TODO define backup static method.
}
static
なbackup
メソッドを定義します。