что за libxml2

mindwork

Guest
что за libxml2

Где можно скачать эту библиотеку под Win. Все о ней говорят а скачать не известно где. Я так понимаю она необходима что в php появилась возмлжность работасть с xml через DOM.

У меня установлен Apache 2.0.52 + PHP 5.03 но xmldoc ( domxml_open_mem() ) естественно не работают, что нужна эта самая libxml2.
 

mindwork

Guest
а где взять php_domxml.dll ? Если просто раскомментировать то он не находит эту библиотеку.

-~{}~ 18.03.05 21:20:

кстати в php 5.03 даже нет такоко расширения, строчку extension=php_domxml.dll можно толко дописать

-~{}~ 18.03.05 21:27:

нашёл php_domxml.dll ( 76 кб ) дописал extension=php_domxml.dll в php.ini - но он не загружается - пишеть не найден указанный модуль.

Help Please !
 

[DAN]

Старожил PHPClub
хм...
Вобщем, объясняю ситуацию.
Модуль domxml поддерживается и работает в 4-х версиях пхп.
В пхп5 такого модуля, как domxml нет. Если нужны функции для работы с DOM, используй встроенный модуль dom (php_dom.dll для внешнего расширения).

Библиотеки libxml2, libxslt и иже с ними для виндов можно взять на сайте у их официального mainteiner`a (как по-русски то сказать :))
http://www.zlatkovic.com/pub/libxml/

Резюме. php_domxml.dll тебе не нужен. Вместо него в 5-й версии пхп работает модуль DOM, который в принципе выполняет те же функции, только исользует стандартный API, рекомендованный w3c.
 

mindwork

Guest
только что скачал с http://www.zlatkovic.com/pub/libxml/ и установил модуль подключается:

dom
DOM/XML enabled
DOM/XML API Version 20031129
libxml Version 2.6.11
HTML Support enabled
XPath Support enabled
XPointer Support enabled
Schema Support enabled
RelaxNG Support enabled


и

libxml
libXML support active
libXML Version 2.6.11
libXML streams enabled

Но всё рано получаю

Fatal error: Call to undefined function: xmldoc() in C:\wserver\www\index.php on line 7

Я уже просто незнаю что делать, на parser3 чтоль снова возвращаться.
 

[DAN]

Старожил PHPClub
Оч хорошо, что установил, это радует))
Так, теперь проясняем ситуацию с API к модулю.
Функция xmldoc относится к модулю domxml (к тому, на который мы забили).
В нашем случае мы должны пользоваться функциями модуля DOM.
Для этого придется немного посидеть за мануалом:
[m]DOM[/m].
Там мы находим, что для того, чтоб создать объект DomDocument (а именно это и делает ф-ция xmldoc), у нас есть множество способов.

Один их них такой:
PHP:
$doc = new DOMDocument();
$doc->load('book.xml');
Далее, исследуя мануал, обнаружится еще великое множество различных методов к различным объектам. Для более глубокого понимания читаем w3c на предмет DOM, XML, XSLT.

P.S. и никаких парсеров! Все скрипты, которые написаны для php4+domxml, на php5 работать не будут.

В этом случае их придется переписывать либо искать враппер (где-то в инете проскакивал) функций domxml для php5.
 
Сверху