21,88%
base_convert (md5($something), 16, 36);
на 21,88% круче, чем
md5($something);
Discuss!
Update:
На 31,25% круче:
$test = trim (base64_encode (md5 ($something, true)),"==");
или (php<5)
$test = trim (pack ("H*", base64_encode (md5 ($something))),"==");
И обратно:
$test = unpack ("H*", base64_decode ($test."==")); $test=$test[1];
ПОХАПЭ
Смотрю движки основных форумов (потом расскажу, зачем).
Смерть, пиздец, жопа, убивать, убивать, убивать.
PHP-программисты бывают двух видов:
1. Те, кто не умеют программировать вообще. Специально для таких же был придуман BASIC. «Сделай инструмент для идиота, и только идиот захочет им пользоваться».
2. Те, кто умеют программировать на других языках. И только на них. Если утрировать, то когда ты узнаешь в PHP-коде привычный ассемблерный синтаксис, волосы в анусе становятся дыбом и седеют.
3. Болк.
Первые и вторые — дураки, просто вторые более изобретательные.
Ну, чтобы не быть голословным: при изобилии говна в таблицах — форум vBulletin создает всего-то чуть более сотни разных табличек, настройки форума они хранят в виде бинарной маски в цыфирке.
Причем в int(10), ага.
В чем профит-то? Место не экономится. Скорость выборки роли не играет. Работать с маской все равно придется, как со строкой, а не на побитовом уровне, decbin возвращает число в двоичной системе без ведущих нулей, и так далее.
(Мне тут уже подсказали, что это я на самом деле не умею работать с бинарными масками в PHP).
Гениальные идеи
Вот, бывает, придумаю гениальную идею и спрашиваю у хакира Болка — хорошая ли идея, будет ли работать?
Оказывается, что идея хорошая и более того — хакир Болк уже эту идею пару раз использовал.
Сразу возникают противоречивые чувства:
1. Досада. Почему про такие вещи нельзя прочитать почти нигде? Нет, я серьезно: куда ни глянь — всюду обсуждения уровня «как передеть переменную выше. например, то где она должна определится на 20 строке, а то где она включается в код на 30 строке, как ее можно передать выше?». На самом деле понятно, почему: 90% людей — идиоты. Всегда и везде. Оставшиеся 10% заняты тем, что молча работают. Если они начнут что-то объяснять людям, то в 90% случаев это будет метание бисера перед свиньями. КПД = 10% — это как-то грустно.
2. Радость. Как хорошо быть умным, придумывать умные вещи и узнавать, что они работают.
Вот, такие дела.
В конце не будет никакой морали.
Skinnable-cacheable
Придумал неболшую идею. Наверняка не я первый.
Идея заключается в том, что страницы кэшируется. Но при этом хочется сделать их Skinnable. То есть чтобы можно было «шкурки» менять. Как кэшировать в таком случае — не совсем понятно.
Простой и забавный (полу)выход. Везде в документах пишем и документы, естественно, кэшируем полностью. И выдаем кэш. А вот css.php — нет, не кешируем и выдаем в нем нужную css-ку в зависимости от содержимого cookies-ов.