2011-12-14 11 views
1

私は最終的なHTML結果を抽出するために、たくさんのPHPファイルを持っています。例えば、PHPファイルの内容は次のようになる場合:PHPファイルからHTMLを抽出するには?

<ul id='<% echo($newsListId) %>'> 
    // PHP loop to create <li> elements 
</ul> 
抽出されなければならない何

は次のとおりです。

<ul id='news-list'> 
    <li>First News</li> 
    <li>Second News</li> 
    <li>Third News</li> 
    <li>Fourth News</li> 
</ul> 

私は何をすべきでしょうか?私のためにできるソフトウェアはありますか?

注:PHPファイルには動的コンテンツはありません。言い換えれば、PHPファイルでは外部データベースとの接続は行われません。実際には、これらのPHPファイルは私がどこかからダウンロードしたテンプレートに属していて、今はその言語を他のもの(ASP.NETなど)に変更したいと思っています。

答えて

3

それは(MAMPまたはWAMPのように)あなたのマシン上でローカルのApacheをインストールし、サーバを介してfile_get_contents()で各ファイルをフォルダ構造をループとを読んでいましたPHPスクリプトを構築するのが最も簡単でしょう。

myFile.phpを読み込もうとすると、ソースは になります。ただし、最初にサーバーで解析された場合、つまりhttp://localhost/myFile.phpという意味は、PHPの解析結果を返します。

シャイ。サーバー上の

+2

... PHPがインストールされていてもWebサーバーがインストールされていない場合は、 'exec(" php myFile.php "、$ result); $ result = implode( "\ n"、$ result); '... and +1。 – DaveRandom

+0

合意した、また素晴らしい解決策、あなたは実際にはApacheや他のWebサーバーをインストールする必要はありません、ちょうどスタンドアロンのPHPのインストールは、トリックを行うでしょう。経験豊かでない人にとって、Webサーバーではやや簡単だと思いますが、 –

+1

Webサーバーをインストールすることは合理的なHTML結果が得られることを保証する最も簡単な方法です - CLI経由で実行すると、 '$ _SERVER'の値が他の潜在的な危険の中で正しく(あるいはまったく)定義されていないことが原因です。 – DaveRandom

1

実行PHPファイルの結果を得るためには、ブラウザでソースを表示し、出力

1

をコピーして貼り付けるはい、あなたは、出力バッファ(PHPコード)にそれらをエコーすることができます

ob_start(); 
include('your_file.php'); 
$contents = ob_get_clean(); 

$contentsは、そのファイルの解析された内容を保持し、あなたが別のファイルに書き込むことができます。

file_put_contents('filename.html', $contents); 

歓声!

+0

多くのファイルについて言えば、これは非常に悪い解決策になります。ファイルのこの "束"が200-300のPHPファイルである場合、私はそれらをすべて単一のPHPファイルに入れることは良い解決策だとは思わない。 –

+0

これらのファイルはすべて含まれていません。このソリューションは、ファイルの解析中にバッファ(別名memory = blazing fast)を塗りつぶしてクリアします。 200〜300ファイルには1分かかることはありません。 – thwd

+1

私が言ったことを取り戻す:)全く悪い考えではない!私は自分自身で試していないのに、アプローチの背後にある考え方が好きです。 –

関連する問題