2013-04-21 3 views
0

Я не использовал PHP в loooong, и у меня возникли проблемы с вещью.PHP: остальная часть кода игнорируется при достижении вызова метода.

В принципе, у меня есть файл класса с именем «database.php» с классом «База данных».

На моей индексной странице всякий раз, когда я достигаю следующей строки, она игнорирует остальную часть кода (отлично работает в локальной битве). :

<?php 
function __autoload($class_name) { 
    include $class_name . '.php'; 
} 
$db = Database::getInstance(); //<---- this line 

some blablabla 
?> 

Есть проблемы с функцией __autoload?

Благодарим за помощь!

ПРИМЕЧАНИЕ: Я загрузил файлы на сервере, который использует Plesk, и я включил PHP ...

+1

Ошибки? Проверьте, возможно, журнал ошибок или установите его для отображения ошибок. – Think

+0

Я добавил «error_reporting (-1);», но он не отображает ошибку. –

+0

На самом деле, я не думаю об ошибке, потому что он выполняет скрипт до тех пор, пока он не достигнет этой строки, если я прокомментирую его, то вся страница здесь: s Я предполагаю, что есть проблема с тем, что я использовал объекты с PHP, или, может быть, способ, которым я называю метод getInstance (база данных - одиночный) –

ответ

3

Остерегайтесь Кэпиталз:

класс базы данных против database.php, это может работать на окнах, но не на linux. Попробуйте с lcfirst в функции _autoload

include lcfirst($class_name) . '.php'; 
+0

И это один большой взнос для вас, сэр! Спасибо !!!! –

+0

Спасибо, рад, что он работает. Кстати, я не вижу ваш код, но обычно, если у вас нет веских оснований для этого, вы должны использовать «require_once» вместо «include». Это может избежать неожиданных побочных эффектов. Бонус: с «require_once» вы бы заметили свою ошибку –

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