我使用的是簡單的DOM HTML解析器PHP腳本在什麼似乎是一個簡單的方法,這裏是我的代碼:PHP和簡單DOM HTML解析器 - 更換相同的文本字符串
include('simple_html_dom.php');
$html = file_get_html($_SERVER['DOCUMENT_ROOT']."/wp-content/themes/genesis-sample-develop/cache-reports/atudem.html");
$snow_depth_min = $html->find('td', 115);
$snow_depth_max = $html->find('td', 116);
$snow_type = $html->find('td', 117);
問題是與$ snow_type。有時解析的文本字符串是'polvo',有時候是'polvo-dura'。我試圖用'powder'替代'polvo',用'粉末/粉末'替換'polvo-dura'。如果我這樣做
if ($snow_type->innertext=='polvo-dura') {
$snow_type->innertext('powder');
}
或
$snow_type = str_replace("polvo", "powder", $snow_type);
$snow_type = str_replace("polvo-dura", "powder/packed", $snow_type);
它像「粉硬腦膜」和奇怪的事情一樣的結果結束。
顯然我是新來的PHP,所以對我有一些耐心;)我也想知道爲什麼發生這種情況,爲什麼可能的解決方案將工作。
在此先感謝
感謝您的回答克里希納,我也試過這個,並認爲這是明顯的正確的解決方案,但它什麼都不做。它應該,但不是。以$ snow_type爲'polvo-dura',它就表明了這一點,忽略了'if'語句。 – Karls