Как сконфигурировать PHP? Конкретно: надо добавить расширение DOM XML

Автор: XDmitriy Дата: 16.08.2003 21:48 Проблема такая: У меня стоит ПОЛНАЯ версия RedHat7.3 установлен Apache и РНР4. Мне нужно обработать XML документ средством PHP, искал в интернете инфу по этому поводу, нашел список DOM XML функций. Там же написано, что для их работы требуется gnome xml library. У меня поставлена вместе с дистрибутивом версия libxml2-2.4.19. В руководстве к DOM XML функциям написано, вот что:

"использует GNOME xml-библиотеки. Загрузите и установите эту библиотеку. Вам понадобится как минимум версия libxml-2.2.7. Это расширение доступно, если PHP был сконфигурирован с опцией --with-dom=[DIR]."

И тут я не знаю что делать. При выводе PHP-info показывает:
"'--with-dom=/usr' "

Но всеравно ни одна функция из набора DOM XML не распознается.

Что можно сделать в такой ситуации? Как отконфигурировать РНР? Имеет ли смысл переписать ссылку на файл библиотеки libxml2.so в каталог /usr, показываемый phpinfo? А какие еще есть варианты?

Заранее спасибо за любую информацию
Re: Как сконфигурировать PHP? Конкретно: надо добавить расширение DOM XML 16.08.2003 23:26leXa Я модули смотрю так:
$php -m
Загруженный модуль DOMXml покажет себя в phpinfo() отдельным блоком:
---
DOM/XML enabled
libxml Version 2.5.4
HTML Support enabled
XPath Support enabled
XPointer Support enabled
---
Пока ты это не увидишь, никакие функции нет смысла вызывать.
В php-manual написано, что модуль "сырой", а все функции экперементальные. Но модуль грузится оттуда, откуда ему и положено (по крайней мере у меня)
open("/usr/lib/libxml2.so.2", ...)
Забей пока на DOM и XPath, попробуй expat`овские XML parser functions, эти работают железно.
Хотя, можно упереться рогом и все-таки сделать так: Улыбка
---
nm -D /usr/lib/libxml2.so
---
Re: Как сконфигурировать PHP? Конкретно: надо добавить расширение DOM XML 17.08.2003 12:25XDmitriy Спасибо, но всеравно остается много неясных моментов:

Загруженный модуль так себя и показал:

DOM/XML enabled
libxml Version 2.4.19
HTML Support enabled
XPath Support enabled
XPointer Support enabled

Действительно, работает только несколько функций, из описанных в документации, но уж очень мало.

А где надо написать команду "$php -m"?
И где можно посмотреть про это: "open("/usr/lib/libxml2.so.2", ...)"

>Забей пока на DOM и XPath, попробуй expat`овские XML parser >functions, эти работают железно.
Я бы работал с ХМЛ парсером, но мне надо еще редактировать ХМЛ документ средствами РНР(добавлять, удалять, изменять). Как это сделать в парсере я не представляю, пришел к выводу, что парсер может только читать документ. Я прав?

И что выполняет команда?
nm -D /usr/lib/libxml2.so
Re: Как сконфигурировать PHP? Конкретно: надо добавить расширение DOM XML 17.08.2003 13:39leXa Ну раз показал, знач точно есть!
$ php -m - прямо в консоли
Просмотр загруженных библиотек видно в трассировщике.
$ man nm
Конечно, проще добавлять и удалять XML-узлы при помощи функций DOM, или придется перегонять документ в хеш таблицу, менять поля и снова перезаписывать.
Re: Как сконфигурировать PHP? Конкретно: надо добавить расширение DOM XML 18.08.2003 17:22ave XDmitriy писал(а):

> установлен Apache и РНР4. Мне нужно обработать XML документ
> средством PHP

Что значит "обработать XML документ" -- преобразовать в другой xml/html-документ? Пожалуйста, если не тайна, приведите конкретный пример задачи.

Вам не подойдут обычные функции XML Parser -- [php.net]?

> Но всеравно ни одна функция из набора DOM XML не
> распознается.

Сообщение об ошибке покажите и с какими параметрами собран PHP (см. phpinfo()).

Если вам нужны именно функции DOM XML, то установка по полной программе выглядит так:

1. Необходимы пакеты:
---
libxml2
libxml2-devel
libxslt
libxslt-devel
---

2. Собрать PHP с параметрами:
---
--with-dom
--with-dom-xslt
--with-dom-exslt
---
Можно без последнего, если вы не будете использовать расширение EXSLT.
Re: Как сконфигурировать PHP? Конкретно: надо добавить расширение DOM XML 18.08.2003 20:21XDmitriy > Что значит "обработать XML документ" -- преобразовать в
> другой xml/html-документ? Пожалуйста, если не тайна, приведите
> конкретный пример задачи.
Мне нужно прочитать данные из ХМЛ файла, добавить туда несколько записей и сохранить обратно.
>
> Вам не подойдут обычные функции XML Parser --
> [php.net]?
Если я не ошибаюсь, то ХМЛ парсер только читать умеет.



> Сообщение об ошибке покажите и с какими параметрами собран
> PHP (см. phpinfo()).
Сообщение об ошибке: вызов к неизвестной функции.
Как я понял, похоже на то, что ДОМ экспериментальный и в моей версии РНР эти функции еще не все работают, как написано в мануале. Версия 4.1.2. Установлена из RPM, потому что собирать я не умею)))

Спасибо за помощь.
RSS-материал