Runkit: не работает на сервере Linux - PullRequest
0 голосов
/ 09 июля 2009

У меня проблема с PECL :: Runkit с этим небольшим примером

index.php contain <?php
runkit_import('a.php');
runkit_import('b.php');
Doublon::get();

a.php и b.php содержат одинаковый код

class Doublon
{
static function get() { echo "class " . __FILE__; }
}

На моем ПК (Windows XP, Wampserver 2, php 5.2.9-2, runkit DLL в комплекте с Wamp) это работает и index.php показывают

class C:\wamp2\www\utilitaires\essais\runkit\b.php

На моем сервере Linux CentOS 5, PHP 5.2.10, Runkit скомпилирован вручную

Warning: runkit_import() [function.runkit-import]: class doublon not
found in /shares/public/cedric/test/index.php on line 2
Warning: runkit_import() [function.runkit-import]: Cannot redeclare
class doublon in /shares/public/cedric/test/index.php on line 2
Warning: runkit_import() [function.runkit-import]: class doublon not
found in /shares/public/cedric/test/index.php on line 3
Warning: runkit_import() [function.runkit-import]: Cannot redeclare
class doublon in /shares/public/cedric/test/index.php on line 3
Fatal error: Class 'Doublon' not found in
/shares/public/cedric/test/index.php on line 4

Одна проблема: make-тест runkit дает мне 100% неудачных тестов, но я до сих пор не знаю, почему. Версия runkit из дистрибутива Linux просто делает сбой Apache: Запуск PHP: база данных часовых поясов повреждена

Я сбросил xdebug, вернитесь к php 5.2.9, но ошибки те же

Заранее спасибо, Седрик

Ответы [ 2 ]

1 голос
/ 10 июля 2009

На сайте пакета написано:

WARNING: 0.9 does not compile with PHP 5.2+ so use the CVS version instead.

Вы используете версию CVS?

0 голосов
/ 09 сентября 2012

Современное расширение runkit можно найти на http://github.com/zenovich/runkit

В любом случае, как я знаю, у runkit никогда не было возможности определять новый класс при импорте. Он может только добавлять или изменять членов существующих классов. Если вы действительно этого хотите, вы можете открыть запрос на функцию http://github.com/zenovich/runkit

Чтобы определить, почему вы получаете разные результаты на своих платформах, мне нужно знать версии runkit и PHP для них обоих. Вы можете получить всю информацию, используя команду 'php -i'.

...