2011-12-14 137 views
1

我有一堆PHP文件,我想從中提取最終的HTML結果。例如,如果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

這將是最簡單的爲您的機器(像MAMPWAMP)上安裝一個本地的Apache,然後建立一個PHP腳本,將在文件夾結構循環,並通過服務器讀取file_get_contents()每個文件。

如果您嘗試閱讀myFile.php,您將獲得源代碼, 但是,如果它首先通過服務器進行解析,則意味着 - 讀取http://localhost/myFile.php,將返回PHP解析的結果。

Shai。

+2

...或者,如果您安裝了PHP但不是Web服務器,您可以使用exec(「php myFile.php」,$ result); $ result = implode(「\ n」,$ result);`...和+1。 – DaveRandom 2011-12-14 13:54:10

+0

同意,也是一個很好的解決方案,你實際上並不需要安裝Apache或任何其他的網絡服務器,只需一個獨立的PHP安裝就可以實現。儘管我確實認爲使用網絡服務器會更容易一些,但對於沒有經驗的人來說:) – 2011-12-14 14:03:31

1

爲了得到結果服務器上運行PHP文件,然後在瀏覽器中查看源和複製並粘貼輸出

1

是的,你可以重複他們到一個輸出緩衝器(PHP代碼):

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

現在$contents持有該文件的解析內容,你可以用寫入另一個文件:

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

喝彩!