Nano Hash - криптовалюты, майнинг, программирование

domDocument loadHTML getElementsByTagName по проблеме, не связанной с объектом

Я новичок в PHP, поэтому я немного застрял в этом коде ex. если вы посмотрите на эту ссылку, там есть таблица, я пытаюсь чтобы получить только эту таблицу, и я знаю, что это первая таблица и она появляется в строке исходного кода 1065.

Но я получаю эту ошибку

bool(false)
Fatal error: Call to a member function getElementsByTagName() on a non-object in /get.php on line 23

У меня есть этот код, надеюсь, кто-то может мне помочь. (строка 23 — это строка $rows..)

<?php
$pulje = '163532';
$url = "http://www.dbu.dk/turneringer_og_resultater/resultatsoegning/position.aspx?poolid=$pulje";

// enable user error handling
var_dump(libxml_use_internal_errors(true));

// parse the html into DOMDoc.
$dom = new domDocument();

$dom->recover = true;
$dom->strictErrorChecking = false;

$dom->loadHTML($url);

$tables = $dom->getElementsByTagName('table');
$rows = $tables->item(count($tables-1))->getElementsByTagName('tr');

$array = array();
foreach($rows as $row){
    $cols = $row->getElementsByTagName('td');
    echo $array[] = $cols;
}
?>

.... ОБНОВЛЕНИЕ.... Я обновил код frem loadHTML до loadHTMLFile, и теперь я получаю эту ошибку

bool(false) Catchable fatal error: Object of class DOMNodeList could not be converted to string in /get.php on line 28

Строка 28 - это массив echo $....


Ответы:


1

Вы должны использовать DOMDocument::loadHTMLFile вместо DOMDocument::loadHTML

  • DOMDocument::loadHTML : загрузить HTML из строки
  • DOMDocument::loadHTMLFile : загрузить HTML из файла.

http://php.net/manual/en/domdocument.loadhtml.php http://php.net/manual/en/domdocument.loadhtmlfile.php

04.01.2014
  • Привет вондо, THX. это устранило проблему, но затем я получаю ошибку DOMNodeList, см. ОБНОВЛЕНИЕ .. надеюсь, что U или другие могут помочь. 05.01.2014
  • вы пытаетесь напечатать $cols, который является DOMNodeList. Если вы хотите проверить его содержимое, вы должны использовать DOMDocument::saveXml (да, это скучно и сложно) 06.01.2014
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..