Форум → Программирование → PHP для идиотов → как избежать ошибок с именами?
как избежать ошибок с именами?
Страницы: ← Следующая страница →
-
Например в разных папках могут оказаться классы с одинаковыми именами, как автолоадеру их загружать? Или например есть куча модулей у каждого свои вьюверы, как шаблонизатору показать, что сейчас надо загрузить вьювер из папки этого модуля, а не другого, сами вьюверы тоже могут быть с одинаковыми именами.
-
Сен. 25, 2010, 7:53 п.п., спустя 1 минуту 2 секунды
Например в разных папках могут оказаться классы с одинаковыми именами, как автолоадеру их загружать?
не может оказаться если использовать стандарты кодирования и именования файлов и переменныхСпустя 8 сек.классобв в смысле, а не переменных конечно)Сапожник без сапог -
Сен. 25, 2010, 7:59 п.п., спустя 5 минут 45 секунд
namespaceСпустя 44 сек.http://php.net/manual/en/language.namespaces.nsconstants.phpСпустя 133 сек.применим как к обычным функциям так и к классам, действует с php 5.3.1 по крайней мере у меня :) -
Сен. 25, 2010, 8:19 п.п., спустя 20 минут 30 секунд
ну например модули будут писать разные люди, и соответственно они же не будут знать как назвал вьюверы или классы в своем модуле другой разработчик.
namespace будем использовать когда большинство наших хостеров будут поддерживать php 5.3 -
Сен. 25, 2010, 8:22 п.п., спустя 3 минуты 6 секунд
wats, большинство наших хостеров посылается лесом и покупается забугорный хостинг, либо свои дата центры xD -
Сен. 25, 2010, 8:23 п.п., спустя 1 минуту 1 секунду
наших хостеров
да тут все просто. как и в 2005ых пхп5 уже был давно, а хостеры подтянулись только к 9ому году, так что 5.3 будет гдето в 2015ом в лучшем случае :)Сапожник без сапог -
Сен. 25, 2010, 8:31 п.п., спустя 8 минут 4 секунды
смотрел фреймворк кохана, там autoload ищет и грузит классы из папок application, modules (при чем он пробегает по всем подключенным модулям) и system, дык там что то эта проблема с именами никак не решена, создав в application класс с таким же названием как в папке system или в каком нибудь модуле, получаешь fatall errorСпустя 215 сек.
wats, большинство наших хостеров посылается лесом и покупается забугорный хостинг, либо свои дата центры xD
ну и нах это надо пользователям, которые будут использовать сию систему?!Спустя 152 сек.да тут все просто. как и в 2005ых пхп5 уже был давно, а хостеры подтянулись только к 9ому году, так что 5.3 будет гдето в 2015ом в лучшем случае :)
вот именно :D -
Сен. 25, 2010, 8:35 п.п., спустя 4 минуты 3 секунды
wats, ну тогда задай другие имена своим классам, как ни странно в английском языке до кучи синонимичных слов ;) -
-
-
Сен. 25, 2010, 8:59 п.п., спустя 11 минут 47 секунд
wats, посмотри как это решено в зендфреймворке
Пока бегло так глянул, там префиксы используются, не очень мне это нравится, но видимо лучше ничего не придумаешь( -
Сен. 25, 2010, 9:03 п.п., спустя 4 минуты
а как по мне, то очень удобно
Zend_Application_Module_Bootstrap == Zend/Application/Module/Bootstrap.php -
Сен. 25, 2010, 9:17 п.п., спустя 13 минут 45 секунд
NRG, вообщем то да, удобно, но вот например в названиях вьюверов тоже префиксы что ли использовать?! Хрень получится. -
Сен. 25, 2010, 10:27 п.п., спустя 1 час 10 минут 27 секунд
wats, ах, да я в своем процедурном фрейме префиксы использую, и все в порядке xD -
Сен. 25, 2010, 11:59 п.п., спустя 1 час 31 минуту 49 секунд
Да, префиксы самое простое решениеhttps://smappi.org/ - платформа по созданию API на все случаи жизни
Страницы: ← Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!