我試圖通過保持html結構來修改所有可見的文本(含義:鏈接,段落,標題等),然後渲染新的頁面。PHP HTML DOM:如何選擇所有可見/可讀文本?
基本上我想打亂所有可讀的文本而不破壞設計/功能。
我試過用Zend_Dom_Query,但如何選擇文本?
$dom = new Zend_Dom_Query($html);
$results = $dom->query(???);
或者還有其他的/更好的方法嗎?
非常感謝。
例
輸入:
<html>
<head>....</head>
<body>
<div>
<h1>Headline</h1>
<h2>Subheadline</h2>
<p>Some text</p>
<a href="...">
A Link
<img src="..." />
<span style="display:none">additional text</span>
</a>
</div>
</body>
</html>
輸出:
<html>
<head>....</head>
<body>
<div>
<h1>Hinladee</h1>
<h2>Suialebdhne</h2>
<p>Smoe txet</p>
<a href="...">
A Lnik
<img src="..." />
<span style="display:none">anodiaditl txet</span>
</a>
</div>
</body>
</html>
對不起,如果我的描述不夠清楚。網站佈局和html結構不應受到影響。如果元素是可見性:隱藏或顯示:沒有關係。我會用一個例子更新我的帖子。 – Mayko
@Makyo由Yoshi刪除的答案有答案。嘗試使用XPath的// text()來獲取文檔中的所有DOMText節點。 – Gordon