人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPで下記のスクリプトを作成してください。

下記の「hoge.html」をfile_get_contentsで読み込み、
「hoge.php」にfwriteするという内容で下記の通りスクリプトを作りました。

hoge.html
---------------
<html>
<body>
</body>
</html>
---------------

作成したスクリプト
---------------
<?php
$html = file_get_contents('hoge.html');
$fp = fopen('hoge.php' , 'w');
fwrite($fp,$html);
fclose($fp);
?>
---------------

ここからが問題なのですが、
「hoge.php」に出力されるスクリプトの「body」と「/body」の間に、
別ファイルである「hatena.php」をincludeさせたいです。
つまり、「hatena.php」の内容を変更すると、
それが「hoge.php」にも自動的に反映されるようにしたいのです。
どのようにしたらよいのでしょうか?

Vista、PHP5、Firefoxという環境でやっています。
質問が不足してたり、不明瞭であったら、その旨お知らせください。
以上、よろしくお願いします。

●質問者: taroemon
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:BODY firefox FP Hatena hoge
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● worldtravel
●60ポイント ベストアンサー

こういう事でしょうか?

違っていたらすいません。


<html>

<body>

#hatena#

</body>

</html>


<?php

$html = file_get_contents('hoge.html');

$hatena = file_get_contents('hatena.php');

$html = ereg_replace("#hatena#",$hatena);

$fp = fopen('hoge.php' , 'w');

fwrite($fp,$html);

fclose($fp);

?>

◎質問者からの返答

ご回答ありがとうございます。


いただいたスクリプトをそのままコピペして使ってみましたが、

「Warning: Wrong parameter count for ereg_replace() in (中略) on line 7」というエラーがでました。


あと、私の質問が悪かったので、下記の通り追加修正させていただきます。


簡単のために<body>と</body>の間を空白にしておりますが、

この間にはいろいろなことが書かれているという前提でお願いします。


?「hoge.php」をfwrite。

?「hatena.php」を変更。

?ブラウザでの表示上、「hoge.php」が変更される。

?の後に再びfwriteしなくても?が変更されているというようにしたいのです。

実際には「hoge.php」のようなファイルがたくさんあって、

それらの一部分の変更だけを「hatena.php」で一元管理したいのです。

別の表現をするならCSSで一元管理するみたいにイメージしていただけると幸いです。


また、特定のファイルの一部分だけをincludeさせることはできるでしょうか?

例えば、「hatena.php」内のユーザー定義関数「jinnriki()」をincludeさせるということです。

本当にそんな都合のよいようにできるのかなぁと思いつつ質問しています。

不可能ならこちらは実現できなくてもかまいません。


目的がかなうならいずれかのスクリプトを大胆に変更していただいてもかまいません。

ひきつづき皆様からのご回答をお待ちしております。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ