2013-06-19 3 views
-4

Кодекса сильфона, пока работает в одном сервере не работает на другойСтранная ошибка, работа в одном сервере, но не в других

abstract class XCTemplate 
{ 
    private static $_instances = array(); 

    public static function Instance($params = array()) 
    { 
     $class = get_called_class(); 

     if(!isset(self::$_instances[$class])) 
     { 
      self::$_instances[$class] = new $class($params); 
     } 

     return self::$_instances[$class]; 
    } 
} 

Погрешность я получаю из приведенного выше кода заключается в следующем:

Fatal error: Call to undefined function get_called_class() in /home/mysite/public_html/wp-content/themes/mysite/Libray/class_template.php on line 36 
+7

http://www.php.net/manual/en/function.get-called-class.php: '(PHP 5> = 5.3.0)' - поэтому, скорее всего, у вас есть более низкая версия на машине где вы получите ошибку. (Кстати, было бы так трудно разобраться в этом руководстве?) – CBroe

ответ

2

оказывается, что сервер, на котором он не работает, не работает PHP 5.3 или более поздней версии. Вы можете легко проверить свою версию PHP, вызвав phpinfo().

Ошибка, которую вы получаете, ожидается, если она запущена < PHP 5.3.

Docs

get_called_class

(PHP 5> = 5.3.0)

1

get_called_class существует с версии 5.3. Разве один из ваших серверов не работает с более старой версией?

 Смежные вопросы

  • Нет связанных вопросов^_^