XMLReader::readString
(PHP 5 >= 5.2.0)
XMLReader::readString — Reads the contents of the current node as a string
Description
public string XMLReader::readString
( void
)
Reads the contents of the current node as a string.
Parameters
This function has no parameters.
Return Values
Returns the content of the current node as a string. Empty string on failure.
Notes
Caution
This function is only available when PHP is compiled against libxml 20620 or later.
See Also
- XMLReader::readOuterXML() - Retrieve XML from current node, including it self
- XMLReader::readInnerXML() - Retrieve XML from current node
- XMLReader::expand() - Returns a copy of the current node as a DOM object
- Функция XMLReader::close() - Закрыть ввод XMLReader
- Функция XMLReader::expand() - Возвратить копию текущего узла в виде объекта DOM
- Функция XMLReader::getAttribute() - Получить значение атрибута с определённым именем
- Функция XMLReader::getAttributeNo() - Получить значение атрибута по индексу
- Функция XMLReader::getAttributeNs() - Получить значение атрибута по localname и URI
- Функция XMLReader::getParserProperty() - Указывает, было ли определенное свойство установлено
- Функция XMLReader::isValid() - Показать, является ли разбираемый документ синтаксически правильным
- Функция XMLReader::lookupNamespace() - Найти пространство имён для префикса
- Функция XMLReader::moveToAttribute() - Переместить курсор к атрибуту с заданным именем
- Функция XMLReader::moveToAttributeNo() - Переместить курсор на атрибут по индексу
- Функция XMLReader::moveToAttributeNs() - Переместить курсор к именованному атрибуту
- Функция XMLReader::moveToElement() - Позиционировать курсор на родительском элементе текущего атрибута
- Функция XMLReader::moveToFirstAttribute() - Переместить позицию курсора на первый атрибут
- Функция XMLReader::moveToNextAttribute() - Переместить позицию курсора на следующий атрибут
- Функция XMLReader::next() - Переместить курсор на следующий узел, пропуская все поддеревья
- Функция XMLReader::open() - Установить URI, содержащий XML-документ для разобора
- Функция XMLReader::read() - Переместиться к следующему узлу в документе
- Функция XMLReader::readInnerXML() - Извлечь XML из текущего узла
- Функция XMLReader::readOuterXML() - Получить XML из текущего узла, включая сам узел
- Функция XMLReader::readString() - Прочитать содержимое текущего узла как строку
- Функция XMLReader::setParserProperty() - Устанавливает опцию парсера
- Функция XMLReader::setRelaxNGSchema() - Устанавить имя файла или URI для схемы RelaxNG
- Функция XMLReader::setRelaxNGSchemaSource() - Устанавливает данные, содержащие схему RelaxNG
- Функция XMLReader::setSchema() - Проверить документ, используя XSD
- Функция XMLReader::XML() - Установить данные, содержащие XML для разбора
Коментарии
For those who, like me, are having trouble figuring out the difference between getString() an getInnerXML(), the difference is that getString() does NOT include markup. So, for:
<foo>bar<baz>Hello, world!</baz></foo>
getString() on the <foo> node would return
bar Hello, world!
whereas getInnerXML() would return
bar<baz>Hello, world!</baz>
I would like to reiterate that this does not work when compiled with versions of libxml lower than 20620. I found that it just presents a blank page.
<?php $string = $reader->readString(); ?>
I worked around this issue by adding the following helper function:
<?php
function read_string($reader) {
$node = $reader->expand();
return $node->textContent;
}
?>
And then using:
<?php $string = read_string($reader); ?>