Как игнорировать пустой блок?
<?php
$html = '<p class="font_8" style="text-align:center; font-size:16px;"><span class="wixGuard"></span><br />
</p>';
$caption_dom = new DOMDocument;
error_reporting(E_ALL ^ E_WARNING);
$caption_dom->loadHTML($html);
error_reporting(E_ALL);
$tags_p = $caption_dom->getElementsByTagName('p');
$data = $tags_p[0]->textContent;
if(htmlentities($data) == null){
exit; //надо попасть сюда!
}
//если не попали, проверяем
$json = json_encode($data);
echo $json."<br \>";
?>
Получаю \u00e2\u0080\u008b\n\u00a0 Почему? По сути перевод строки и пробел должен быть... Перевод строки там видно \n, а откуда всё остальное?
Цель: перевод строки и пробелы должны тримиться и хотел игнорить этот блок, как пустой, но пустой не выходит)
Пример из песочницы (с оригинальными данными): https://www.tehplayground.com/htWopS4E8F33ocCV
Ответы (2 шт):
Автор решения: Антон Сибгатулин
→ Ссылка
Ваш код правильно работает
<?php
$html = '<p class="font_8" style="text-align:center; font-size:16px;"><span class="wixGuard"></span><br/> </p>';
$caption_dom = new DOMDocument;
error_reporting(E_ALL ^ E_WARNING);
$caption_dom->loadHTML($html);
error_reporting(E_ALL);
$tags_p = $caption_dom->getElementsByTagName('p');
$data = $tags_p[0]->textContent;
if(htmlentities($data) == null){
exit; //надо попасть сюда!
}
//если не попали, проверяем
$json = json_encode($data);
echo $json."<br \>";
echo "some text: ".$data;
?>
vs code подчеркнула мне эти уголочки ,я их стер и написал заново и всё заработало
строка пустая (только пробел)
Автор решения: Антон Сибгатулин
→ Ссылка
$html = str_replace("","",$html);
Скопируйте и вставьте ,и он уберет этот символ :)
https://www.tehplayground.com/wf5xMczrZyzYxUmB (P.S. 43 строка)

