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 :: Версия для печати :: Перехват имени класса в spl_autoload_register. Возможно ли?
Форумы портала PHP.SU » » Вопросы новичков » Перехват имени класса в spl_autoload_register. Возможно ли?

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

1. arimanecro - 12 Мая, 2017 - 16:33:06 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. spl_autoload_register (function($class) {
  2.     return $class.'lala';});
  3.  
  4. (new test());


Fatal error: Uncaught Error: Class 'test'

А хотелось бы:

Fatal error: Uncaught Error: Class 'testlala'
===========
Возможно ли?
2. T1grOK - 12 Мая, 2017 - 17:09:41 - перейти к сообщению
arimanecro пишет:
Fatal error: Uncaught Error: Class 'test'

А хотелось бы:

Fatal error: Uncaught Error: Class 'testlala'

Вообще не вижу ни одного адекватного оправдания такой необходимости. Пытаетесь создать экземпляр класса test и получаете, полезную информацию в виде ошибки связанную с test, а не какую-то подставленную ахинею в виде - testlala
Может все таки более уместно будет добавить фабричный метод, который будет делать нужную предобработку?

P.S. Кстати, spl_autoload_register используете неправильно.

 

Powered by ExBB FM 1.0 RC1