Loading...
Полезные сайты | Изучение ЯП: PHP 8 ++
Вилы Выкидные (23 фев 2024, в 18:45)
трейт подключается, только там где он нужен, если подгружаемый сервис в данный момент его требует, то он отработает, это не хелпер, который глобально подключен всегда
А, ты про spl_autoload_register() ? Ну да, есть такая фича. Но она пишется буквально в 3 строки и никаких книг для этого читать не надо)
Something (23 фев 2024, в 18:47)
А, ты про spl_autoload_register() ? Ну да, есть такая фича. Но она пишется буквально в 3 строки и никаких книг для этого читать не надо)
будет и в одну строку работать, если неймспейсы в нижнем регистре, просто написать spl_autoload_register() и всё будет работать

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

кстати не очень понятно почему разрабы ЯП до сих пор не предусмотрели такой вариант
Потому чтобы работало, нужно папку с классами прописать для инклуда. Всё там по уму сделано :-)
Something (23 фев 2024, в 18:55)
Потому чтобы работало, нужно папку с классами прописать для инклуда. Всё там по уму сделано :-)
я в том смысле, что в самой функции можно сделать приведение к нижнему регистру в любом случае, как бы разраб не прописывал классы: ClassName или classname

чтобы не сочинять лабуду вроде

spl_autoload_register(fn($c) => !is_file($f = strtr(lcfirst($c) . '.php', '\\', '/')) ?: require $f);
Something (23 фев 2024, в 18:55)
Потому чтобы работало, нужно папку с классами прописать для инклуда. Всё там по уму сделано :-)
spl_autoload_register() поймёт classname, но не поймёт ClassName, нужно велик писать колбэком
Вилы Выкидные (23 фев 2024, в 19:01)
spl_autoload_register() поймёт classname, но не поймёт ClassName, нужно велик писать колбэком
Хз, я не пробовал без калбэка делать. Откуда он файлы подключать будет если без колбэка?
Something (23 фев 2024, в 19:06)
Хз, я не пробовал без калбэка делать. Откуда он файлы подключать будет если без колбэка?
там предусмотрено, я сишную функцию смотрел, НО нет перевода неймспейсов в нижний

например файл app/actions/home.php

просто пропишем

spl_autoload_register(/** тут не нужен колбэк */);


и всё отработает

App/Actions/Home.php - НЕ ПОДКЛЮЧИТСЯ автоматом, spl_autoload_register не понимает верхний регистр

*DONT_KNOW*

я бы на месте разрабов в любом случае в нижний перевёл внутри реализации spl_autoload_register и колбэк тогда не нужен становится
Вилы Выкидные (23 фев 2024, в 19:12)
там предусмотрено, я сишную функцию смотрел, НО нет перевода неймспейсов в нижний

например файл app/actions/home.php

просто пропишем

spl_autoload_register(/** тут не нужен колбэк */);


и всё отработает

App/Actions/Home.php - НЕ ПОДКЛЮЧИТСЯ автоматом, spl_autoload_register не понимает верхний регистр

*DONT_KNOW*

я бы на месте разрабов в любом случае в нижний перевёл внутри реализации spl_autoload_register и колбэк тогда не нужен становится
Просто пиши в нижнем регистре)
Something (23 фев 2024, в 19:16)
Просто пиши в нижнем регистре)
канон нарушается ))) по Соглашениям нужно писать ClassName

при classname читабельность теряется, хотя можно тупо из процедурки взять class_name

КАНОН ЖЕ :-D
Вилы Выкидные (23 фев 2024, в 19:18)
канон нарушается ))) по Соглашениям нужно писать ClassName

при classname читабельность теряется, хотя можно тупо из процедурки взять class_name

КАНОН ЖЕ :-D
Так никто не запрещает забить на каноны и чьи-то там соглашения. Я, например, пишу в нижнем регистре не только классы и неймспейсы, но и имена констант). Весь код в нижнем регистре). Ну кроме стандартных классов и констант, разумеется. И всё прекрасно работает и красиво при этом)
________
посл. ред. 23.02.2024 в 19:38; всего 2 раз(а); by Something
Онлайн: 5
Время: 12:14:26
Gen. 0.1065
(c) ByMAS.RU 2010-2025