Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> XPath поиск. 
:(
    Опции темы
Reptor
Дата 17.11.2008, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: нет
Всего: 0



есть у меня вот такой XML

Код

<?xml version="1.0" encoding="UTF-8"?>
<root>
       <element>
                 <path1>path</path1>
                 <path2>pathd2</path2>
        </element>
</root>


и вот есть методы поиска по документу в который я передаю 
 $res = $xml->findNode("/root/element/path1");
//       echo $res->length;
       print_r($res);
        var_dump($res);

и вывод мне показывает что ничего не найдено... smile  почему??? Ведь в XML есть этот путь

вот вывод переменной $res

DOMNodeList Object
(
)
object(DOMNodeList)#56 (0) {
}


Код

private function initializationXPath(){
        $this->xpath = new DOMXpath($this->DOMDoc);  // тут $this->DOMDoc это  $this->DOMDoc = new DOMDocument(self::version, self::encoding);
    }

.......................

 function findNode($path){
        $this->initializationXPath();
        return $this->xpath->query($path);

    }




PM MAIL ICQ   Вверх
awers
Дата 17.11.2008, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1465
Регистрация: 22.3.2006
Где: Россия, Таганрог

Репутация: нет
Всего: 31



еще один слеш к началу запроса
PM MAIL WWW ICQ Skype   Вверх
Reptor
Дата 17.11.2008, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: нет
Всего: 0



awers,  так тоже безрезультатно
PM MAIL ICQ   Вверх
Reptor
Дата 17.11.2008, 19:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: нет
Всего: 0



почему может ничего не находить?....я уже не знаю как сделать..  smile 
PM MAIL ICQ   Вверх
jsa
Дата 18.11.2008, 05:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 704
Регистрация: 19.1.2006
Где: Новосибирск

Репутация: нет
Всего: 20



Цитата(Reptor @  17.11.2008,  16:51 Найти цитируемый пост)
// тут $this->DOMDoc это  $this->DOMDoc = new DOMDocument(self::version, self::encoding);

а где содержимое то?


--------------------
Все мы, на перине с песней, строим небо на земле © Ю. Шевчук
PM MAIL ICQ   Вверх
Reptor
Дата 18.11.2008, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1213
Регистрация: 29.12.2004

Репутация: нет
Всего: 0



jsa, содержимое есть.... вот же оно я ж давал в начале

перед поиском зделал echo saveXML()

Код

<?xml version="1.0" encoding="UTF-8"?>
<root>
       <element>
                 <path1>path</path1>
                 <path2>pathd2</path2>
        </element>
</root>

PM MAIL ICQ   Вверх
Nigel
Дата 18.11.2008, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


познаю мир
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 20.11.2007

Репутация: нет
Всего: 19



awers, никакой там слэш не нужен.

Reptor, Вы, кажется, не до конца прочитали документацию по DOMXPath.
Код

$XML = <<<XML
<?xml version="1.0" encoding="UTF-8"?>
<root>
       <element>
                 <path1>path</path1>
                 <path2>pathd2</path2>
        </element>
</root>
XML;

$doc = new DOMDocument;

$doc->LoadXML($XML);

$xpath = new DOMXPath($doc);

$node = $xpath->query('/root/element/path1');

var_dump($node->item(0)->nodeValue);

А что simplexml не нравится?
Код

$XML = <<<XML
<?xml version="1.0" encoding="UTF-8"?>
<root>
       <element>
                 <path1>path</path1>
                 <path2>pathd2</path2>
        </element>
</root>
XML;

$xml = simplexml_load_string($XML);

$nodes = $xml->xpath('//element/*');

foreach($nodes as $node) {

    echo $node.'<br />';

}

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: X технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0456 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.