Новые потрясающие выкрутасы с sendmail
itruns:
В темпе вальса переводим все письма в UTF-8! И, само собой, ничто никогда не работает сразу так, как хочется =).
Если в header просто заменить кодировку на UTF-8:
Content-type: text/html; charset=utf-8само тело письма преобразуется нормально. Однако тема (subject) продолжает подражать самым изысканным иероглифам. На сайте php.net нашлась вот такая строчка:
$subject= mb_encode_mimeheader($subject, “UTF-8”, “B”, “\n”);Сработало. Почему-то, не с первого раза, но это я уже не в силах объяснить.
Тут можно обойтись и без mb_string (у меня к нему личная неприязнь). У нас сам текст в какой кодировке? UTF-8? Ну и отлично. Чего мучать глючный модуль пыха?
Пишем вот так:
$subject = '=?UTF-8?'; // Говорим, что у нас в теме текст в соответствующей кодировке
$subject .= 'B?'; // А текст зашифрован алгоритмом base64
$subject .= base64_encode($content) . '?='; // Кодируем текст и дописываем завершающее выражение
Вот и все. Любой почтовый клиент, следующий стандартам, обязан это корректно прочитать.
Аналогично и с остальными полями: от кого и кому (кроме адреса), само тело письма…
Запишу скорее для себя, пока напомнили топиком на хабре.
Устанавливаем ZenCoding на чистый Eclipse.
1. Устанавливаем Eclipse Monkey. Ссылка на сервак апдейтов: http://download.eclipse.org/technology/dash/update/
2. Создаем в корне любого проекта папку “monkey”. Можно выделить и отдельный проект.
3. Кидаем в эту папку содержимое архива Zen Coding for Aptana
4. Обновляем проект или перезагружаем эклипс.
5. Если не работает [Crtl] + [E], изменяем на [Alt] + [E]: в файле Expand Abbreviation.js заменяем ” * Key: M1+E” на ” * Key: M3+E”.
Кто не знаком с ZenCoding, вот тут подробнее описано.
HeidiSQL
Хочу пропиарить один очень интересный мне проект.
HeidiSQL — удобный менеджер баз данных MySQL под вин (на лине отлично и очень шустро работает из вайна).
Он очень удобен, быстр и представляет БД наилучшим образом.
Но что самое главное, это open source проект, он совершенно бесплатен. В отличие от ваших этих навикат’ов и емс’ов.
http://www.heidisql.com/
И да, лучше использовать версию 5.0, не смотря на бету.
я всегда думал, что я зануда в плане строгости правил программирования… интерпретатор пхп круче меня: оно мне предъявляет претензии по поводу того, что я не определили индекы!! массива $_GET перед тем, как их использовать!
Есть большой соблазн вообще отключить E_NOTICE нахер и писать как вздумается :-P
Кагбэ вот: http://dumpz.org/16950/ На оригинальность (как и правильность) не претендую.
И ни в коем случае не забивай на нотайсы! Иначе будешь таким же быдлокодером, как и 90% кодеров на пыхе.
ООП. Интерфейсы
Просто замечательный пример использования интерфейсов.
Новичкам (и не только) читать обязательно!
Мдя, правда жизни…
Наткнулся в каметах хабра на замечательную историю:
Любой русский программист после пары минут чтения кода, обязательно вскочит и произнесет обращаясь к себе: переписать это все нафиг. Потом в нем шевельнется сомнение в том, сколько времени это займет, и остаток дня русский программист потратит на то, что будет доказывать самому себе, что это только кажется, что переписать это много работы. А если взяться и посидеть немного, то все получится. Зато код будет красивый и правильный.
Я негодую!
Лучик ненависти в сторону PHP.
Вот какой дебил писал класс Exception??
Вот нахрена было ставить перед методами getMessage, getCode, getFile и getLine кейворд final???
Доступ к изменению свойств, возвращаемых этими методами я имею, а, видите ли, простейшие методы переписать не могу! ППЦ!
Уже раз в десятый сталкиваюсь с тем, что приходится давать какие-то каличные имена методам в классе, унаследованном от Exception.
Вот чего не дать кодерам переопределять эти методы?
Может это я калич, но php для меня — уродский язык.
ГРРР!
Подсветка синтаксиса
Ну вот, как и любой уважающий себя кодер, добавил подсветку синтаксиса в свой мини-блог =)
Оценить можно в предыдущем посте.
А так же во всех последующих постах с фрагментами кода =))
Инвижн…
Захотел проследить одну последовательность в третьем инвижне (Invision Power Board 3).
Загрузил его как проект в зенд-студио. И офигел.
21 (!!!) синтаксическая ошибка! Я и раньше видел, что это быдлокод, но не до такой же степени!!!
$entry['date'] = gmdate( $this->settings->getSetting('csite_article_date'], $entry['post_date'] + $this->registry->getClass('class_localization')->getTimeOffset() );
Это нужно быть редким уникумом, чтобы поставить квадратную скобку после параметра функции.Да еще и выпустить это в продакшн!!
Все, ухожу, закрываюсь! ©