[PHP-users 3816] Re: phpでの標準出力のhtml ファイルへの保存

まつなみ php-users@php.gr.jp
Sun, 25 Nov 2001 02:12:16 +0900


まつなみです。

わたしがよくやる方法をご参考程度までにご紹介します。

ozeki> 実は、何をしたいかというと、個人紹介型のホームページ作成において、
ozeki> 雛型を作ってあるHTMLのページにフォームからデータを入力してもらい、
ozeki> そのデータをHTMLに埋め込んでページを表示させたいと考えています。
(snip)
ozeki> と、任意の場所にデータを埋め込まなければならないのですが、そういう

template.htmlという雛型ファイルを用意します。
雛側ファイル中には埋め込みポイントに!name_here!と特別な文字列を入れて
おきます。

read_file()関数で雛形ファイルの中身を全部,$html変数へ入れちゃいます。
str_replace()関数で$html変数の中に含まれる!name_here!という文字列を
埋め込みたい文字列で置換します。
write_file()関数でファイルに$html変数の中身を出力します。

$html = read_file("template.html");

$html = str_replace("!name_here!", $name, $html);
$html = str_replace("!age_here!", $age, $html);
$html = str_replace("!tel_here!", $tel, $html);

write_file("output.html", $html);

function read_file($filepath)
{
    $fd = fopen($filepath, "r");
    $content = fread($fd, filesize($filepath));
    fclose($fd);
    return $content;
}

function write_file($filepath, $content)
{
    $fd = fopen($filepath, "w");
    fwrite($fd, $content);
    fclose($fd);
}

エラー処理など省いてあります。
また,上記ソースはテストしてません。
ミスがあるかもしれません。

-- 
まつなみ <mat@abelia.ocn.ne.jp>