Posts Tagged ‘программирование’

Перечисления в PHP

Понедельник, Июль 7th, 2008

Часто ли вам приходилось сожалето о том, что в PHP нет перечислений как таковых?

Да, кто-то обходился конвенцией именования и получалось нечто вроде:

define( 'COLOR_RED', 'F00' );
define( 'COLOR_GREEN', '0F0' );
define( 'COLOR_BLUE', '00F' );

Или нечто вроде:

// данную переменную ЗАПРЕЩЕНО модифицировать
$colors = array(
    'red' => 'F00',
    'green' => '0F0',
    'blue' => '00F',
);

Но оба подхода имеют существенные недостатки:

  • В первом случае члены перечисления не образуют явной группировки
  • Во втором случае есть риск что переменная будет изменена
  • И в обоих этих случаях мы не можем делать проверку на тип переменной (type hinting)

Под катом предлагаю решение без вышеописанных недостатков…
(more…)

пути в переменных

Понедельник, Март 5th, 2007

если хранить в переменно путь, то что считать идеологически верным - использовать завершающий слеш или нет? я склонен предполагать что завершающий слеш оставлять не надо и в итоге будем иметь:
если храним в константе путь, к примеру, к каталогу тимплейтов, то везде где мы будем его использовать литеральная часть будет вести от своего корня (”/” = root).
Пример:

TEMPLATE_DIR."/some/path/from/tpl/root/file.tpl";

или пофик?..