ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
* [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