* [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
@ 2009-05-04 14:56 Павел
2009-05-04 18:39 ` Alexey Gladkov
0 siblings, 1 reply; 11+ messages in thread
From: Павел @ 2009-05-04 14:56 UTC (permalink / raw)
To: ALT Linux Sisyphus discussions
1)SimpleXML стоит
2)phpinfo говорит, что SPL не знает про SimpleXMLIterator:
SPL support => enabled
Interfaces => Countable, OuterIterator, RecursiveIterator, SeekableIterator,
SplObserver, SplSubject
Classes => AppendIterator, ArrayIterator, ArrayObject,
BadFunctionCallException, BadMethodCallException, CachingIterator,
DirectoryIterator, DomainException, EmptyIterator, FilterIterator,
InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException,
LimitIterator, LogicException, NoRewindIterator, OutOfBoundsException,
OutOfRangeException, OverflowException, ParentIterator, RangeException,
RecursiveArrayIterator, RecursiveCachingIterator, RecursiveDirectoryIterator,
RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator,
RegexIterator, RuntimeException, SplFileInfo, SplFileObject, SplObjectStorage,
SplTempFileObject, UnderflowException, UnexpectedValueException
3)создание нового объекта выдаёт соответствующую ошибку:
[rap-kasta@localhost eng4dxxx]$ php -r 'new SimpleXMLIterator();'
PHP Fatal error: Class 'SimpleXMLIterator' not found in Command line code on
line 1
Fatal error: Class 'SimpleXMLIterator' not found in Command line code on line
1
Did you have a trick :) ? Сабж нужен, срочно и без него не жить.
--
===============
А ещё говорят так:
Never make any mistaeks.
-- Anonymous, in a mail discussion about to a kernel bug report
[fortune]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-04 14:56 [sisyphus] PHP SPL не имеет класса SimpleXMLIterator Павел
@ 2009-05-04 18:39 ` Alexey Gladkov
2009-05-05 10:22 ` Манылов Павел
2009-05-06 10:25 ` Павел
0 siblings, 2 replies; 11+ messages in thread
From: Alexey Gladkov @ 2009-05-04 18:39 UTC (permalink / raw)
To: ALT Linux Sisyphus discussions
On 04.05.2009 18:56, Павел wrote:
> 1)SimpleXML стоит
> 2)phpinfo говорит, что SPL не знает про SimpleXMLIterator:
>
Он не знает, потому что не должен. Это не часть модуля. Это класс
написанный на php:
http://ru2.php.net/manual/en/class.simplexmliterator.php
> Did you have a trick :) ? Сабж нужен, срочно и без него не жить.
Если нужно срочно, то:
http://git.altlinux.org/people/legion/packages/php5.git?p=php5.git;a=blob;f=php5/ext/spl/spl.php;h=43c29e987744fcf175a1ee12a42301d5ff48964c;hb=724f1b780f52d4fba0fb8cf18218762a66cbf8b4
--
Rgrds, legion
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-04 18:39 ` Alexey Gladkov
@ 2009-05-05 10:22 ` Манылов Павел
2009-05-05 11:30 ` Манылов Павел
2009-05-06 10:25 ` Павел
1 sibling, 1 reply; 11+ messages in thread
From: Манылов Павел @ 2009-05-05 10:22 UTC (permalink / raw)
To: ALT Linux Sisyphus discussions
>Если нужно срочно, то:
http://git.altlinux.org/people/legion/packages/php5.git?p=php5.git;a=blob;f=php5/ext/spl/spl.php;h=43c29e987744fcf175a1ee12a42301d5ff48964c;hb=724f1b780f52d4fba0fb8cf18218762a66cbf8b4
Спс.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-05 10:22 ` Манылов Павел
@ 2009-05-05 11:30 ` Манылов Павел
0 siblings, 0 replies; 11+ messages in thread
From: Манылов Павел @ 2009-05-05 11:30 UTC (permalink / raw)
To: Манылов
Павел,
ALT Linux Sisyphus discussions
Возникла проблема: сделал phpize,make, псле make so файл не появился, make install выдал следующее:
[root@localhost spl]# make install
Installing shared extensions: /usr/lib/php/5.2.9/extensions/
cp: target `/usr/lib/php/5.2.9/extensions/#INST@5777#' is not a directory
Пробовал как с /usr/src/php5-devel/ext/spl (обновил указанный файл), так и сделал снапшот всего stl в отдельную директорию и...получил тоже самое...
Приму любую помощь :)
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-04 18:39 ` Alexey Gladkov
2009-05-05 10:22 ` Манылов Павел
@ 2009-05-06 10:25 ` Павел
2009-05-06 10:54 ` Alexey Gladkov
1 sibling, 1 reply; 11+ messages in thread
From: Павел @ 2009-05-06 10:25 UTC (permalink / raw)
To: sisyphus
On Вторник 05 мая 2009 00:39:54 Alexey Gladkov wrote:
> Он не знает, потому что не должен. Это не часть модуля. Это класс
> написанный на php:
>
> http://ru2.php.net/manual/en/class.simplexmliterator.php
Это понятно, однако в php он как я понял "вшивается" при компиляции, по
крайней мере spl точно(хотя могу и ошибаться :-) ) сделан не как extension...
> Если нужно срочно, то:
>
> http://git.altlinux.org/people/legion/packages/php5.git?p=php5.git;a=blob;f
>=php5/ext/spl/spl.php;h=43c29e987744fcf175a1ee12a42301d5ff48964c;hb=724f1b78
>0f52d4fba0fb8cf18218762a66cbf8b4
Собственно этот самый файл есть часть spl и как я понимаю в текущем пакете в
sisyphus он устарел... НО spl ведь у нас не отдельный extension, а мои попытки
скомпилировать его как extension к успеху не привели (см. другое письмо) - как
я понял временная директория не создаётся, моих знаний синтаксиса Makefile к
сожалению не хватило чтобы сделать mkdir перед обращением.
Если можете, дайте совет как всё это хозяйство исправить...или же мне делать
полный снапшот php'шного git'а и компилировать его с теми же config-
параметрами?
P.S. Я отлично понимаю что сам по себе SimpleXMLIterator - пустой
наследованный класс, однако у меня нет возможности изменять скрипт или
добавлять что либо в него - мне просто нужно его запустить. Я с этим уже 3 дня
бьюсь.....
P.P.S. Если у вас есть собранный новый бинарник...не могли бы вы его
закоммитить в сизиф? Или послать мне...
--
===============
А ещё говорят так:
Ничто не красит так женщин, как перекись водорода
[fortune]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-06 10:25 ` Павел
@ 2009-05-06 10:54 ` Alexey Gladkov
2009-05-06 15:07 ` Павел
0 siblings, 1 reply; 11+ messages in thread
From: Alexey Gladkov @ 2009-05-06 10:54 UTC (permalink / raw)
To: ALT Linux Sisyphus discussions
On 06.05.2009 14:25, Павел wrote:
> Это понятно, однако в php он как я понял "вшивается" при компиляции, по
> крайней мере spl точно(хотя могу и ошибаться :-) ) сделан не как extension...
spl.php никуда не вшивается. Это вообще пример :)
У нас модуль php5-spl находится внутри libphp5.
> Собственно этот самый файл есть часть spl и как я понимаю в текущем пакете в
> sisyphus он устарел...
Он у нас провно тот, что идёт вместе с php5.
> Если можете, дайте совет как всё это хозяйство исправить...или же мне делать
> полный снапшот php'шного git'а и компилировать его с теми же config-
> параметрами?
Если вам нужно обновить весь spl, то вам нужно пересобрать весь php5
(в частности libphp5).
> P.S. Я отлично понимаю что сам по себе SimpleXMLIterator - пустой
> наследованный класс, однако у меня нет возможности изменять скрипт или
> добавлять что либо в него - мне просто нужно его запустить. Я с этим уже 3 дня
> бьюсь.....
Если вам нужен spl.php, то положите его в include_path.
--
Rgrds, legion
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-06 10:54 ` Alexey Gladkov
@ 2009-05-06 15:07 ` Павел
2009-05-06 15:24 ` Alexey Gladkov
0 siblings, 1 reply; 11+ messages in thread
From: Павел @ 2009-05-06 15:07 UTC (permalink / raw)
To: sisyphus
On Среда 06 мая 2009 16:54:59 Alexey Gladkov wrote:
> Если вам нужно обновить весь spl, то вам нужно пересобрать весь php5
> (в частности libphp5).
А могу ли я скачать source-rpm, например отсюда:
ftp://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/files/SRPMS/php5-5.2.9.20090205-
alt1.src.rpm
и заменить в нём файлы, отвечающие за spl на взятые "откуда нибудь"? И если
да, то может ли этим "откуда нибудь" стать например вот этот (
http://www.php.net/get/php-5.2.9.tar.gz/from/a/mirror ) архив?
P.S.Извиняюсь что задаю много вопросов :)...Но к сожалению у меня трафик
дорогой и потому десятки различных авосек, что влазят в мою башку, проверять
на практике не всегда могу. Ну и плюс хочется чтобы система не захламлялась...
:-)
--
===============
А ещё говорят так:
Малые страдания выводят нас из себя, великие же возвращают нас самим себе;
треснувший колокол издает глухой звук, но разбейте его на две части - и
получится
чистый звук.
-- Жан Поль
[fortune]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-06 15:07 ` Павел
@ 2009-05-06 15:24 ` Alexey Gladkov
2009-05-06 15:38 ` Павел
2009-05-07 12:24 ` Павел
0 siblings, 2 replies; 11+ messages in thread
From: Alexey Gladkov @ 2009-05-06 15:24 UTC (permalink / raw)
To: ALT Linux Sisyphus discussions
On 06.05.2009 19:07, Павел wrote:
> и заменить в нём файлы, отвечающие за spl на взятые "откуда нибудь"? И если
> да, то может ли этим "откуда нибудь" стать например вот этот (
> http://www.php.net/get/php-5.2.9.tar.gz/from/a/mirror ) архив?
Конечно можете. Это называется обновить пакет php5. Только положив
новый php-5.2.9.tar.gz вам предётся обновить все патчи и suhosin.
--
Rgrds, legion
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-06 15:24 ` Alexey Gladkov
@ 2009-05-06 15:38 ` Павел
2009-05-07 12:24 ` Павел
1 sibling, 0 replies; 11+ messages in thread
From: Павел @ 2009-05-06 15:38 UTC (permalink / raw)
To: sisyphus
On Среда 06 мая 2009 21:24:41 Alexey Gladkov wrote:
> On 06.05.2009 19:07, Павел wrote:
> > и заменить в нём файлы, отвечающие за spl на взятые "откуда нибудь"? И
> > если да, то может ли этим "откуда нибудь" стать например вот этот (
> > http://www.php.net/get/php-5.2.9.tar.gz/from/a/mirror ) архив?
>
> Конечно можете. Это называется обновить пакет php5. Только положив
> новый php-5.2.9.tar.gz вам предётся обновить все патчи и suhosin.
Спасибо. Я думаю до следующего апдейта бинарника в сизифе я и без сухосина
проживу, ибо apache у меня наружу смотрит очень редко :)
P.S. а патчи точно затрагивали spl.c и иже с ними ?
--
===============
А ещё говорят так:
Old age is too high a price to pay for maturity.
[fortune]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-06 15:24 ` Alexey Gladkov
2009-05-06 15:38 ` Павел
@ 2009-05-07 12:24 ` Павел
2009-11-08 17:09 ` Slava Semushin
1 sibling, 1 reply; 11+ messages in thread
From: Павел @ 2009-05-07 12:24 UTC (permalink / raw)
To: sisyphus
On Среда 06 мая 2009 21:24:41 Alexey Gladkov wrote:
> On 06.05.2009 19:07, Павел wrote:
> > и заменить в нём файлы, отвечающие за spl на взятые "откуда нибудь"? И
> > если да, то может ли этим "откуда нибудь" стать например вот этот (
> > http://www.php.net/get/php-5.2.9.tar.gz/from/a/mirror ) архив?
>
> Конечно можете. Это называется обновить пакет php5. Только положив
> новый php-5.2.9.tar.gz вам предётся обновить все патчи и suhosin.
Итак, я обновил...установил и ...ничего не поменялось...Что же...чуть чуть
погуглил и увидел что с отключенным при компиляции simpleXML simpleXMLIterator
создан не будет.
Мораль: если надо SimpleXMLIterator, то не делаем disable-simplexml, при этом
конечно расширение simpleXML стоит выключить, дабы не получать сообщения "
Module 'SimpleXML' already loaded" (Ниже написал хаутушку)
P.S.Алексей, не могли бы вы в следующем коммите как-то разрулить эту ситуацию,
я с ней справился, но вот мало ли у кого вновь будет такая проблемка...
HowTO:
//Только если php -i|grep SimpleXMLIterator ничего не возвращает!
1)Качаем src.rpm пакет с сизифа, распаковываем куданить
2)Качаем сорс-пакет с php.net (мб в src.rpm уже всё есть...проверьте-если есть
директория php5-source.tar.bz2/php5-source/ext/simplexml и она не пустая...то
я думаю этот и следующий шаг можно пропустить)
3)распаковываем в другую директорию скачанный в (2) архив, делаем его по
структуре аналогичным php5-source.tar.bz2, называем также и перемещаем в
директорию (1)
4)правим spec: удаляем строчку --disable-simplexml \
5)переносим изменённый (1) в ~/RPM/SOURCES
6)спек кладём в ~/RPM/SPECS
7)делаем rpmbuild -ba <имя_спека>
8)идём в директорию с билдами (в (7) будет написано куда) и устанавливаем
rpm-ки.
В моём случае: rpm -Uvh *
9)Тестируем:
php -r 'new SimpleXMLIterator() ';
Не обращаем внимание на ошибки и сомтрим есть ли заветное "Uncaught exception
'Exception' with message 'SimpleXMLElement::__construct() expects at least 1
parameter, 0 given' in Command line code", если есть, то не поверите: всё
круто :-)
Если расширение simplexml было установлено,то должна появиться ошибка (в
первой строке): "Module 'SimpleXML' already loaded"", чтобы от него
избавиться, нам придётся избавиться и от рсширения simplexml как расширения
(ибо он у нас "вшит в php"): добавляем во все используемые
/etc/php/<ВЕРСИЯ>/<CLI/apache../apache2../etc...>/php.d/simplexml.ini точку с
запятой (;) вначало и...радуемся жизни :-)
--
===============
А ещё говорят так:
Таланты истинны на критику не злятся;
Их повредить она не может красоты.
Одни поддельные цветы дождя боятся!
-- И.А.Крылов
[fortune]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [sisyphus] PHP SPL не имеет класса SimpleXMLIterator
2009-05-07 12:24 ` Павел
@ 2009-11-08 17:09 ` Slava Semushin
0 siblings, 0 replies; 11+ messages in thread
From: Slava Semushin @ 2009-11-08 17:09 UTC (permalink / raw)
To: ALT Linux Sisyphus discussions
7 мая 2009 г. 18:24 пользователь Павел <rap-kasta@mail.ru> написал:
[...]
> HowTO:
>
> //Только если php -i|grep SimpleXMLIterator ничего не возвращает!
>
> 1)Качаем src.rpm пакет с сизифа, распаковываем куданить
> 2)Качаем сорс-пакет с php.net (мб в src.rpm уже всё есть...проверьте-если есть
> директория php5-source.tar.bz2/php5-source/ext/simplexml и она не пустая...то
> я думаю этот и следующий шаг можно пропустить)
> 3)распаковываем в другую директорию скачанный в (2) архив, делаем его по
> структуре аналогичным php5-source.tar.bz2, называем также и перемещаем в
> директорию (1)
> 4)правим spec: удаляем строчку --disable-simplexml \
> 5)переносим изменённый (1) в ~/RPM/SOURCES
> 6)спек кладём в ~/RPM/SPECS
> 7)делаем rpmbuild -ba <имя_спека>
> 8)идём в директорию с билдами (в (7) будет написано куда) и устанавливаем
> rpm-ки.
> В моём случае: rpm -Uvh *
> 9)Тестируем:
> php -r 'new SimpleXMLIterator() ';
> Не обращаем внимание на ошибки и сомтрим есть ли заветное "Uncaught exception
> 'Exception' with message 'SimpleXMLElement::__construct() expects at least 1
> parameter, 0 given' in Command line code", если есть, то не поверите: всё
> круто :-)
> Если расширение simplexml было установлено,то должна появиться ошибка (в
> первой строке): "Module 'SimpleXML' already loaded"", чтобы от него
> избавиться, нам придётся избавиться и от рсширения simplexml как расширения
> (ибо он у нас "вшит в php"): добавляем во все используемые
> /etc/php/<ВЕРСИЯ>/<CLI/apache../apache2../etc...>/php.d/simplexml.ini точку с
> запятой (;) вначало и...радуемся жизни :-)
Спасибо. Очень помогло.
Попутно повесил баг: https://bugzilla.altlinux.org/show_bug.cgi?id=22210
--
Slava Semushin
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2009-11-08 17:09 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-05-04 14:56 [sisyphus] PHP SPL не имеет класса SimpleXMLIterator Павел
2009-05-04 18:39 ` Alexey Gladkov
2009-05-05 10:22 ` Манылов Павел
2009-05-05 11:30 ` Манылов Павел
2009-05-06 10:25 ` Павел
2009-05-06 10:54 ` Alexey Gladkov
2009-05-06 15:07 ` Павел
2009-05-06 15:24 ` Alexey Gladkov
2009-05-06 15:38 ` Павел
2009-05-07 12:24 ` Павел
2009-11-08 17:09 ` Slava Semushin
ALT Linux Sisyphus discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
public-inbox-index sisyphus
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.sisyphus
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git