Полезные сайты | Изучение ЯП: PHP 8 ++

трейт подключается, только там где он нужен, если подгружаемый сервис в данный момент его требует, то он отработает, это не хелпер, который глобально подключен всегда

А, ты про spl_autoload_register() ? Ну да, есть такая фича. Но она пишется буквально в 3 строки и никаких книг для этого читать не надо)
кстати не очень понятно почему разрабы ЯП до сих пор не предусмотрели такой вариант

будет и в одну строку работать, если неймспейсы в нижнем регистре, просто написать spl_autoload_register() и всё будет работать
кстати не очень понятно почему разрабы ЯП до сих пор не предусмотрели такой вариант


Потому чтобы работало, нужно папку с классами прописать для инклуда. Всё там по уму сделано

чтобы не сочинять лабуду вроде
spl_autoload_register(fn($c) => !is_file($f = strtr(lcfirst($c) . '.php', '\\', '/')) ?: require $f);

Потому чтобы работало, нужно папку с классами прописать для инклуда. Всё там по уму сделано


spl_autoload_register() поймёт classname, но не поймёт ClassName, нужно велик писать колбэком

Хз, я не пробовал без калбэка делать. Откуда он файлы подключать будет если без колбэка?
например файл app/actions/home.php
просто пропишем
spl_autoload_register(/** тут не нужен колбэк */);
и всё отработает
App/Actions/Home.php - НЕ ПОДКЛЮЧИТСЯ автоматом, spl_autoload_register не понимает верхний регистр

я бы на месте разрабов в любом случае в нижний перевёл внутри реализации spl_autoload_register и колбэк тогда не нужен становится

там предусмотрено, я сишную функцию смотрел, НО нет перевода неймспейсов в нижний
например файл app/actions/home.php
просто пропишем
spl_autoload_register(/** тут не нужен колбэк */);
и всё отработает
App/Actions/Home.php - НЕ ПОДКЛЮЧИТСЯ автоматом, spl_autoload_register не понимает верхний регистр

я бы на месте разрабов в любом случае в нижний перевёл внутри реализации spl_autoload_register и колбэк тогда не нужен становится

Просто пиши в нижнем регистре)
при classname читабельность теряется, хотя можно тупо из процедурки взять class_name
КАНОН ЖЕ


канон нарушается ))) по Соглашениям нужно писать ClassName
при classname читабельность теряется, хотя можно тупо из процедурки взять class_name
КАНОН ЖЕ

________
посл. ред. 23.02.2024 в 19:38; всего 2 раз(а); by Something