Я использую Simple DOM HTML Parser PHP скрипт в том, что, как представляется, является простым способом, вот мой код:PHP и Simple DOM HTML Parser - Заменить идентичный текст строки
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». Я пытаюсь заменить «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