Например, я создаю такой DOMDocument : <?php $implementation = new DOMImplementation(); $dtd = $implementation->createDocumentType ( 'html', // qualifiedName '-//W3C//DTD XHTML 1.0 Transitional//EN', // publicId 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-' .'transitional.dtd' // systemId ); $document = $implementation->createDocument('', '', $dtd); $elementHtml = $document->createElement('html'); $elementHead = $document->createElement('head'); $elementBody = $document->createElement('body'); $elementTitle = $document->createElement('title'); $textTitre = $document->createTextNode('My bweb page'); $attrLang = $document->createAttribute('lang'); $attrLang->value […]
Я пытаюсь получить текст из div, где class = 'review-text' , используя элемент DOM PHP со следующим HTML (такая же структура) и следующий код. Однако, похоже, это не работает HTML $html = ' <div class="page-wrapper"> <section class="page single-review" itemtype="http://schema.org/Review" itemscope="" itemprop="review"> <article class="review clearfix"> <div class="review-content"> <div class="review-text" itemprop="reviewBody"> Outstanding … </div> </div> </article> </section> […]
Вот коды: $doc = new DomDocument('1.0'); // create root node $root = $doc->createElement('root'); $root = $doc->appendChild($root); $signed_values = array('a' => 'eee', 'b' => 'sd', 'c' => 'df'); // process one row at a time foreach ($signed_values as $key => $val) { // add node for each row $occ = $doc->createElement('error'); $occ = $root->appendChild($occ); // add […]
Я создаю XML в представлении с основной библиотекой CakePHP Xml : $xml = Xml::build($data, array('return' => 'domdocument')); echo $xml->saveXML(); Вид подается от контроллера с помощью массива: $this->set( array( 'data' => array( 'root' => array( array( '@id' => 'A & B: OK', 'name' => 'C & D: OK', 'sub1' => array( '@id' => 'E & F: […]
У меня большая проблема с PHP DOMDocument :: validate (), который, похоже, систематически спрашивает DTD. Это большая проблема, когда я хочу проверить, например, документ XHTML, как описано здесь . Поскольку w3.org, кажется, отклоняет весь запрос с сервера PHP, невозможно проверить мой документ с помощью этого метода … Есть ли для этого решение? Спасибо, заранее [EDIT] […]
Как получить значение поля ввода, как показано ниже, где у него нет атрибута ID с помощью DOMDocument PHP? <input type="text" name="make" value="Toyota">
Я являюсь функцией ниже, я изо всех сил пытаюсь вывести DOMDocument без добавления в оболочку XML, HTML, body и p тегов перед выходом содержимого. Предлагаемое исправление: $postarray['post_content'] = $d->saveXML($d->getElementsByTagName('p')->item(0)); Работает только тогда, когда содержимое не содержит элементов уровня блока. Однако, когда это происходит, как в примере ниже с элементом h1, полученный результат saveXML усекается до […]
Я хотел бы добавить корневой путь сайта для тех тегов привязки, которые не имеют корневого пути, используя php dom document. До сих пор они сделали функцию, чтобы сделать это с помощью функции str_replace, но для некоторых ссылок это добавление трех и для корневого пути времени. Тогда что я должен отредактировать в этой функции. Проблема : […]
Возможные дубликаты: сканирование html-страницы с использованием php? Лучшие методы анализа HTML У меня есть одна строковая переменная в моем php-скрипте, который содержит html-страницу. Как я могу извлечь DOM-элементы из этой строки? Например, в этой строке '<div class="someclass">text</div>' , я хочу получить переменную 'text'. Как я могу это сделать?
Я добавляю хеш #b для каждой ссылки через класс DOMDocument. $dom = new DOMDocument(); $dom->loadHTML($output); $a_tags = $dom->getElementsByTagName('a'); foreach($a_tags as $a) { $value = $a->getAttribute('href'); $a->setAttribute('href', $value . '#b'); } return $dom->saveHTML(); Это работает отлично, однако возвращаемый вывод включает объявление DOCTYPE и <head> и <body> . Любая идея, почему это происходит или как я могу […]