Вызов неопределенного метода DOMText :: getAttribute () - PullRequest
0 голосов
/ 17 апреля 2020

Мой веб-сайт использует следующий код и прекрасно работает на PHP7 .3, но веб-сайт был перенесен на новый сервер, и теперь он выдает ошибку Call to undefined method DOMText::getAttribute() в той же версии PHP, которая была 7.3, а также на 7, 7.1 и 7.2, теперь он работает только на PHP 5.6.

    $dom = new DOMDocument();
    libxml_use_internal_errors(true);
    $dom->loadHTML($html_with_readable_names);
    libxml_use_internal_errors(false);
    $domx = new DOMXPath($dom);
    $items = $domx->query('//'.$element['type'].'[@name="'.$element['name'].'"]');

    foreach($items as $item) {
        $friendly_name = strtolower($item->getAttribute("name"));
        // above line causes error            
        ...more code
    }

Что может измениться между серверами?

Я видел различные исправления, такие как добавление if ($item->nodeType == XML_ELEMENT_NODE) { до или if (get_class($node) != 'DOMText') {, но, похоже, не подходит.

...