Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: не работает самописный автозагрузчик
Форумы портала PHP.SU » » Если скрипт не работает » не работает самописный автозагрузчик

Страниц (1): [1]
 

1. Crate - 28 Апреля, 2012 - 11:19:57 - перейти к сообщению
Написал автозагрузчик файлов:
PHP:
скопировать код в буфер обмена
  1. function load ($dir, $files) {
  2.         if (is_array ($files)) {
  3.                 foreach ($files as $file) {
  4.                         include_once ($dir.DS.$file);
  5.                 }
  6.         }
  7.         else {include_once ($dir.DS.$files);}
  8. }

Но он ничего не загружает и ошибок не выводится.
2. Zuldek - 28 Апреля, 2012 - 11:22:28 - перейти к сообщению
Извините, но чуть с кресла не упал Радость .
Пишите загрузчики чтобы, если не загружали, то выдавали ошибки Подмигивание
Или показывайте весь код а не пищу для шаманского бубна.
3. Crate - 28 Апреля, 2012 - 11:34:23 - перейти к сообщению
Zuldek окай, вот весь код:
PHP:
скопировать код в буфер обмена
  1. class Core {   
  2.         function load ($dir, $files) {
  3.                 if (is_array ($files)) {
  4.                         foreach ($files as $file) {
  5.                                         include_once ($dir.DS.$file);
  6.                         }
  7.                 }
  8.                 else {include_once ($dir.DS.$files);}
  9.         }
  10. }
  11.        
  12. $core = new Core ();
  13. $core->load(STASH_INCLUDES, array ("system.php"));
4. Zuldek - 28 Апреля, 2012 - 11:51:17 - перейти к сообщению
ну, на это могу сказать только:
CODE (htmlphp):
скопировать код в буфер обмена
  1. error_reporting(E_ALL | E_STRICT) ;
  2. ini_set('display_errors', 'On');

и смотреть причины.
5. Crate - 28 Апреля, 2012 - 12:02:41 - перейти к сообщению
Zuldek дебаг делал сразу, ошибок нет, но файл не грузится.
6. Zuldek - 28 Апреля, 2012 - 12:06:40 - перейти к сообщению
выведете реальное содержание $files и $dir.
если "файл не грузится" и включен вывод ошибок и нету собачки, то инклуды и реквари вам отдадут ошибку. Если вы её не видите то напортачили либо с настройками сервера либо у вас стоит отлов ошибок php и некорректно работает функция их вывода, либо не правильно или не там прописали директивы включения вывода ошибок в самом скрипте.
Чудес не бывает.
7. Crate - 28 Апреля, 2012 - 12:29:38 - перейти к сообщению
Zuldek
Все пути правильные, все выводится, но не инклюдится.
8. caballero - 28 Апреля, 2012 - 12:35:09 - перейти к сообщению
а как ты видишь что не инклудится?
9. Crate - 28 Апреля, 2012 - 12:37:40 - перейти к сообщению
caballero в файле находится класс, к нему создан объект, выводятся ошибки о необъявленной объекте (объявлен в файле).
10. OrmaJever - 28 Апреля, 2012 - 13:10:57 - перейти к сообщению
Crate если имя правельно и ошибок нет, значит файл подключен, а почему уже обьект не создался это уже смотрите там.
11. caballero - 28 Апреля, 2012 - 13:40:44 - перейти к сообщению
просто сунь echo (если пользоватся дебагером как нормальные люди не умеешь) в инклуденый файл и посмотри выведет или нет
и зачем самопальный автолоад который даже близко автолоадом не является
12. Crate - 28 Апреля, 2012 - 17:45:46 - перейти к сообщению
caballero echo вывелось, но объект не создался почему-то.

 

Powered by ExBB FM 1.0 RC1