Я пытаюсь извлечь весь текст ссылки и hrefs из строки HTML, но исходная строка - Unicode, а nodeValue, похоже, не справляется с этим?PHP: Unicode nodeValue?
$links = array();
$titles = array();
$dom = new DOMDocument();
$dom->loadHTML($str);
$hrefs = $dom->getElementsByTagName("a");
foreach ($hrefs as $href) {
$links[] = $href->getAttribute("href");
$titles[] = $href->nodeValue;
}
Моя исходная строка выглядит следующим образом:
<p><a href='uploads/root/tr_62.pdf'>Türkiye</a></p>
Но мой выход за $ названия [0] выглядит следующим образом:
Türkiye
Как я могу сделать nodeValue уважать символы Unicode ?
Спасибо, что посмотрели!
При добавлении 'Header ("Content-тип: текст/html; кодировка = UTF-8");' к вашему сценарию (перед первым выходом), устраняет проблему? –
У меня есть полный заголовок HTML на странице, и т. Д. –
' DOMDocument' и все функции XML по умолчанию для UTF-8, чтобы они могли обрабатывать Unicode просто отлично. Из вашего вывода это приложение, которое использует либо однобайтную кодировку, отличную от Юникода, либо не может объявить ее кодировку (тег '' в основном не имеет значения, то, что считается HTTP-заголовками и, конечно, фактическим содержимым). /// Оставьте ваш код PHP отдельно. Если вы копируете и вставляете статический '車', правильно ли он печатается? –