Я бы использовал классы с static
методами в таком случае:
class Tools {
static public function myMethod() {
return 1*1;
}
}
echo Tools::myMethod();
РЕДАКТИРОВАТЬ
Как уже упоминалось Крисом и yes123: если хостеруже работает PHP 5.3 + , вам следует рассмотреть возможность использования namespace
.Я бы порекомендовал прочитать статью Мэтью Вейера О'Пинни Почему PHP Namespace Matter , если вы не уверены, стоит ли переходить на пространства имен.
EDIT
Хотя те, кто обобщал использование статических методов как «плохую практику» или «бессмыслицу», не объясняли почему они считают это таковым - что, по моему мнению, было бы более конструктивным- они все еще заставили меня переосмыслить и перечитать.
Типичными аргументами будет то, что статические методы могут создавать зависимости и из-за этого могут сделать невозможным модульное тестирование и переименование классов.
Если модульное тестирование вообще не используется (возможно, программирование для домашнего / личного использования или малобюджетные проекты, где никто не желает оплачивать дополнительные затраты на реализацию модульного тестирования), этот аргумент становится устаревшим,конечно.
Даже если используется модульное тестирование, можно избежать создания зависимостей статических методов с помощью $var::myMethod()
.Таким образом, вы все еще можете использовать насмешки и переименовать класс ...
Тем не менее я пришел к выводу, что мой ответ слишком обобщен.
Думаю, мне лучше написать: Это зависит .
Поскольку это, скорее всего, приведет к открытому обсуждению плюсов и минусов всех возможных технических решений, а также десятков возможных сценариев и условий, я не желаювдаваясь в это.
Я проголосовал за ответ Криса сейчас.Он уже охватывает большинство технических возможностей и должен служить вам хорошо.