Notice: file_put_contents(): Write of 18296 bytes failed with errno=28 No space left on device in /var/www/tgoop/post.php on line 50
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter@phpproglib P.5638
PHPPROGLIB Telegram 5638
🆕 PHP 8.4: Новый способ работы с HTML — Dom\HTMLDocument

PHP 8.4 привносит свежесть в старую боль — работу с HTML-документами через DOMDocument. Встречайте: Dom\HTMLDocument из нового пространства имён Dom\*. Он: более совместим со стандартами, работает быстрее, и избавляет от некоторых багов старого DOM.

🧱 Интерфейс знакомый: loadHTML, getElementById, saveHTML — всё на месте. Но не всё так просто:
🚫 Внимание: это не прямой заменитель DOMDocument. Старый и новый классы работают параллельно.

📌 Что нового:
Dom\HTMLDocument::createFromString($html) вместо loadHTML()
Поддержка CSS-селекторов напрямую: querySelector() и querySelectorAll() 🔥
Более строгий парсинг: предупреждения, если нет <!DOCTYPE>, автоматическое добавление <head> и <body>
importLegacyNode() — чтобы не страдать при переносе узлов из старых DOMDocument

Быстрее на лицо:
1 млн итераций:
DOMDocument: ~4.3 сек
Dom\HTMLDocument: ~3.4 сек
🛠️ Документации мало, но JetBrains уже подготовили stubs для PHPStorm. Найдёшь тут:
👉 Github

🎯 В целом — большое улучшение для тех, кто серьёзно работает с HTML в PHP. В будущем ждём больше инструментов и автоматической миграции

🔗 Читать статью
3👍3



tgoop.com/phpproglib/5638
Create:
Last Update:

🆕 PHP 8.4: Новый способ работы с HTML — Dom\HTMLDocument

PHP 8.4 привносит свежесть в старую боль — работу с HTML-документами через DOMDocument. Встречайте: Dom\HTMLDocument из нового пространства имён Dom\*. Он: более совместим со стандартами, работает быстрее, и избавляет от некоторых багов старого DOM.

🧱 Интерфейс знакомый: loadHTML, getElementById, saveHTML — всё на месте. Но не всё так просто:
🚫 Внимание: это не прямой заменитель DOMDocument. Старый и новый классы работают параллельно.

📌 Что нового:
Dom\HTMLDocument::createFromString($html) вместо loadHTML()
Поддержка CSS-селекторов напрямую: querySelector() и querySelectorAll() 🔥
Более строгий парсинг: предупреждения, если нет <!DOCTYPE>, автоматическое добавление <head> и <body>
importLegacyNode() — чтобы не страдать при переносе узлов из старых DOMDocument

Быстрее на лицо:
1 млн итераций:
DOMDocument: ~4.3 сек
Dom\HTMLDocument: ~3.4 сек
🛠️ Документации мало, но JetBrains уже подготовили stubs для PHPStorm. Найдёшь тут:
👉 Github

🎯 В целом — большое улучшение для тех, кто серьёзно работает с HTML в PHP. В будущем ждём больше инструментов и автоматической миграции

🔗 Читать статью

BY Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter


Share with your friend now:
tgoop.com/phpproglib/5638

View MORE
Open in Telegram


Telegram News

Date: |

“[The defendant] could not shift his criminal liability,” Hui said. fire bomb molotov November 18 Dylan Hollingsworth yau ma tei Among the requests, the Brazilian electoral Court wanted to know if they could obtain data on the origins of malicious content posted on the platform. According to the TSE, this would enable the authorities to track false content and identify the user responsible for publishing it in the first place. The channel also called on people to turn out for illegal assemblies and listed the things that participants should bring along with them, showing prior planning was in the works for riots. The messages also incited people to hurl toxic gas bombs at police and MTR stations, he added. Developing social channels based on exchanging a single message isn’t exactly new, of course. Back in 2014, the “Yo” app was launched with the sole purpose of enabling users to send each other the greeting “Yo.”
from us


Telegram Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter
FROM American