BoriHagen
@BoriHagen

Почему объект Php Simple Dom пустой?

Я пытаюсь при помощи библиотеки Simple PHP DOM поменять Html у элемента с логотипом:

<div class="site-header__logo grid-col grid-col-sm-4 grid-col-xl-3" data-track-wrapper="header-logobar">
    <div class="e-site-logo__award">Title</div>
    <a href="https://www.mysite.ru/" class="e-site-logo" data-track-img>
        <svg xmlns="http://www.w3.org/2000/svg" aria-labelledby="site-logo-title" class="e-site-logo__image" id="site-logo" viewbox="0 0 430 70">
        <title id="site-logo-title">www.mysite.ru</title>
        </svg>
    </a>
</div>


$html = file_get_html($path);
$headLogo = '<img src="img.jpg" class="e-site-logo__image" id="site-logo">';

$html->find("#site-logo", 0)->outertext = $headLogo;


Но при выполнении кода выскакивает ошибка Creating default object from empty value.
Соответственно он не может создать объект из пустого значения, а значит $html->find("#site-logo", 0) не находится.
Однако, если сделать echo $html->find("#site-logo", 0)->outertext - то все прекрасно выводится.
Как такое возможно?
  • Вопрос задан
  • 50 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы