Это заговор

1 марта 2009; Рубрика: php; ;

На одном из форумов человек интересовался, что это за ключевое слово такое в PHP — from. Дескать, Zend Studio его подсвечивает.

Хотел сказать, что, мол, это зенд у тебя палёный и начать тыкать в List of Reserved Words. И тут на тебе — мои NetBeans и Eclipse его тоже подсветили. Предположение, что редакторы путают PHP с SQL не прошло: и SELECT, и WHERE остаются в коде такими же мертвенно чёрными, как обычные константы и функции.

Видимо, это новая сверхсекретная возможность зарезервированная для будущих версий PHP. С ней нам всем наверняка станет очень хорошо. Или придёт полный пиздец. Чего, впрочем, никто не знает.

Через Жо

Того же дня; Рубрика: Новости; Теги: , , ;

Пару недель назад на Хабре перевели статью одного из разработчиков Internet Explorer о том, почему innerHTML не работает с таблицами. Объяснение, почему оно не работает чётко показывает подход использованный в разработки IE. Подход «пиздец, ну и похуй».

Как это было и в прошлый раз с утечками памяти при работе с DOM, и на этот раз, вместо того, чтобы исправлять свой продукт, творцы из MS пишут статьи о том, каким путём проблему можно обойти. Путь, как и обычно, пролегает через жопу и кишечник.

Радуют объяснения из серии: «я мог проверить, что innerHTML у TBODY устанавливался во что-то, начинающееся с <tr>… Звучит достаточно просто, пока вы не начнёте учитывать все варианты. Вроде подающейся строки, например как <!– новые строки –><tr>…». То есть вместо того, чтобы забить на этот гипотетический вариант с комментарием, IE достигает универсальности одинаковой работы для всех вариантов. Универсальности из серии не работает ваще нигде.

1 марта

Того же дня; Рубрика: Новости; Теги: , ;

Прошедшая зима начиналась с полного пиздеца, закончилась, кажется, более-менее вменяемо. Посмотрим, что будет дальше…

PHPLinq

28 февраля 2009; Рубрика: Новости; Теги: , ;

На хабре написали про реализацию Linq на PHP для выборок из массивов.

Про реализацию — пока не будет сишного расширения, реализации на самом PHP, по большому счёту бессмысленны из-за низкого быстродействия. Про идею — с одной стороны хуйня, с другой, в принципе забавно, нужно будет последить.

json_encode сосёт

Того же дня; Рубрика: Новости; Теги: , , , ;

В новой версии PHP, как уже было сказано, пофиксено множество неприятных вещей. Среди них и баг за номером 42 090, опубликованный аж в июле 2007. Баг этот позволял грохнуть процесс посылкой непотребного JSON-запроса. Хотя, видимо, работало это только под Ubuntu (мне не на windows ни на freebsd воиспроизвести не удалось), всё же исправление данной ошибки, несомненно, радует.

А вот json_encode() продолжает огорчать. В документации к нему написано This function only works with UTF-8 encoded data. И правда, от любых других кодировок он просто отплёвывается. Но мне это до без разницы, неприятно то, что и с UTF-8, работает он через жопу.

Вызов json_encode("русский текст") выдаёт гомосятину вида \u0440\u0443\u0441\u0441\u043a… Какого хера? Зачем работая only with UTF, выдавая строку для JS, которая так же работает всегда only UTF, кодировать всё этими идиотскими мнемониками?

Мало того, что вывод превращается в кашу, в которой не разобраться визуально при отладке, так ещё вместо 2-х байт на символ, шлём 6. Вот вам и экономия трафика за счёт ajax’а.

Так что нужно или мириться с этим или извращаться самим на PHP, как это делают люди в комментариях к документации.

Если для каких-то высоких целей универсальности и сохранения совместимости это и необходимо, почему не ввести второй аргумент функции, типа, $mneNahuyNeNujnaSovmestimost? Впрочем второй аргумент там есть: [, int $options=0], как написано, это Bitmask consisting of PHP_JSON_HEX_QUOT, PHP_JSON_HEX_TAG, PHP_JSON_HEX_AMP, PHP_JSON_HEX_APOS. Что означают все эти мракобесные константы не уточняется. Впрочем и уточнение тут не поможет — на любой вызов со вторым аргументом функция ругается json_encode() expects exactly 1 parameter, 2 given и Use of undefined constant PHP_JSON_HEX_QUOT.

Вобщем, ждём, когда adw0rd напишет новое расширение. :)

PHP 5.2.9 Релизед!

27 февраля 2009; Рубрика: Новости; ;

Нежданно-негаданно вышел PHP 5.2.9..

Основной упор сделан на исправление ошибок — в новой версии их задавленно аж 50 штук. Неизвестно стоит радоваться по этому поводу или тихо охуевать: в ченчлоге два экрана про «Fixed a crash».

ЧПУ-ПУ-ПУ

Того же дня; Рубрика: php; Теги: , , ;

Или вот допустим ЧПУ. Человекопонятные URL. Есть URL: www.site.com/news.php?action=archive&year=2009&month=2.
Он человеконепонятный и человеконенавистнеческий.
А вот так понятный: www.site.com/news/archive/2009/02/. Всем видно — это архив новостей за февраль 2009. Более того, если стереть 02, получим архив за весь 2009, сотрём его, получим полный архив, сотрём и archive — окажемся в корне раздела новостей, добавим в конце 27, получим список новостей за день.

(Остальной текст под катом)

Memcache vs Memcached

26 февраля 2009; Рубрика: php; Теги: , ;

Под шумок, в начале года, вышло новое расширение для работы с memcached из php. Было php_memcache, стало php_memcached.

Как пишет Андрей Змиевский новая версия использует библиотеку libmemcached, и, если в предыдущем расширении взаимодействие с мемкэшем велось через жопу, то теперь всё будет неимоверно круто.

Среди новых примочек, наиболее полезная — получение нескольких ключей одним запросом.

К сожалению, пока нет готовой dll для Windows. В русскоязычном интернете про новое расширение вообще ничего не видно, и даже google заявляет возможно, вы имели в виду: php_memcache.

Кавычки, на

25 февраля 2009; Рубрика: Новости; Теги: , ;

Откуда повелась эта ёбаная радость заменять обычные двойные кавычки на эти ущербные косые «недокавычки»?

Я отрубил визуальный редактор, я написал сообщение в чистом html в своём редакторе и скопировал на сайт. Там не было этого говна — («), там были нормальные программистские кавычки — (").

Сколько уже видел блогов, на которых приводится программный код и который хуй скопируешь себе, потому что там кавычки заменены на хуйню.

Они что красивее? Семантически вернее? Помогают в SEO? Песдеc…

Типочки:
© Я не я и сайта не моя, 2008–2011