2016-11-26 34 views
0

我有包含HTML文件:PHP - 編輯特定的HTML內容的文件

<div> 
    <p class="derp">Hello</p> 
    <p>Hi</p> 
    <p>Heyo</p> 
</div> 

我想要做的就是做的是更新HTML文件的P標籤,像這樣的具體說明:

<?php 
    $value = "I am here to replace something!"; 
    $index = 1; 

    $page_source = file_get_contents($file_name); 
    // Something here to replace the second p-tag with $value 
    file_put_contents($file_name, $page_source); 
?> 

我已經嘗試了2種不同的方法來做到這一點(loadHTML,preg_replace),但我想聽聽你的意見,哪些可能是最適合我的情況。

非常好的答案!

回答

1

我個人比較喜歡native PHP extensions。它們比任何其他第三方庫更快 - 取決於您的任務,但通常情況是這樣 - 我通過文檔獲得所需的全部控制權。我主要使用的是DOM

迄今爲止我使用過的最好的第三方庫,無論如何,是FluentDom;它提供了一個類似jQuery的界面來瀏覽文檔的元素,並且可以使用Composer進行安裝。

我不會使用正則表達式,除非我必須應用一個非常小的更改,因爲創建DOMDocument的新實例看起來很浪費。

編輯:Gordon通過this amazing answer瞭解更多詳情。