Алексей Симоненко

Jul 25

13 PHP SPL Exception классов, готовых к работе

Исключения (Exception) появились в PHP с версии 5.0, они добавили хорошие возможности по обработке ошибок. Вместе с исключениями в PHP появилась стандартная библиотека классов (SPL), сейчас она содержит 13 готовых классов для обработки исключений. Вот их список и пояснение к пременению:

  1. BadFunctionCallException
    Неправильный вызов функции, возможно отсутствуют необходимые аргументы.
  2. BadMethodCallException
    Неправильный вызов метода, возможно отсутствуют необходимые аргументы.
  3. DomainException
    Указывает, что значение не проходит проверку набора правил для приложения.
  4. InvalidArgumentException
    Указывает, что переданные аргументы не совпадают с ожидаемыми.
  5. LengthException
    Указывает, что длина некорректная.
  6. LogicException
    Указывает, что присутствует ошибка в логике.
  7. OutOfBoundsException
    Указывает, что значение ключа не существует, либо оно некорректно.
  8. OutOfRangeException
    Указывает, что значение выходит за пределы диапозона.
  9. OverflowException
    Указывает, что новый элемент не помещается в контейнер.
  10. RangeException
    Указывает, что был передан неверный диапозон.
  11. RuntimeException
    Специальный класс исключений для ошибок, которые могут происходить только во время выполнения.
  12. UnderflowException
    Указывает, что элемент не может быть удален из пустого контейнера.
  13. UnexpectedValueException
    Указывает, что данное значение не ожидается.

Список Exception классов на сайте php.net.

Jul 12

[video]

Jun 25

Используйте localStorage API вместо Cookie!

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

В разделе спецификаций HTML5 Web Storage представлен объект localStorage, который позволяет хранить данные в виде ключ/значение на устройстве пользователя.

В данный момент localStorage реализован в браузерах: IE >= 8, FF >= 3.5, Safari >= 4, Chrome >= 3.0, Opera >= 10.5.

Но если вам нужна поддержка в более старых браузерах вы можете сделать такой вот простенький workaround.

Пример работы localStorage и Cookie.

May 11

Raphaël JS 1.4 - теперь с поддержкой жестов -

thechangelog:

Dmitry Baranovskiy обновил Raphaël JS, это очень мощная JavaScript библиотека для векторной графики. С версии 1.4 появилась поддержка жестов, например это может быть очень удобным в устройствах таких как iPad.

[Исходники на GitHub] [Сайт проекта]

Apr 12

“Только те, кто предпринимает абсурдные попытки, смогут достичь невозможного.” — Альберт Эйнштейн

Feb 17

Why HTML5 Rocks -

Смотреть лучше в Webkit-based браузере.

Feb 06

Редактирование изображения в офлайне и последующая загрузка с помощью HTML5

Мы с вами уже научились загружать файлы с помощью File API, Drag & Drop и XMLHttpRequest. Теперь мы можем развить тему применения новых технологий и рассмотрим возможность редактирования изображения еще до закачки на сервер. Для этого нам понадобятся следующие особенности HTML5.

Работающий пример, можете попробовать все сами. 100% работоспособность в Firefox 3.6.

Демонстрация.

Оригинальная статья на Mozilla Hacks (на английском).

Feb 04

“Самый мощный элемент в рекламе ~ правда.” — Уильям Бернбах

Feb 03

Видео канал о HTML5 и CSS3

У разработчиков и верстальщиков теперь есть свой собственный канал — <!DOCTYPE>.

На данный момент записано уже 10 эпизодов. Можно подписаться через iTunes, RSS либо следить за выпуском новых эпизодов через Twitter.

Ведущие Nick Pettit и Jim Hoskins, рассказывают очень подробно о новинках HTML5 и CSS3. Разговор идет на английском.

Эпизоды выпускают раз в неделю.

Уже несколько недель подписан на <!DOCTYPE> в своем iTunes, пока доволен.

Feb 02

Обновление базы для locate команды в Mac OS X

Одна из моих любимых команд в Unix — “locate”. Она очень полезна когда нужно найти файлы через консоль. Однако после того как Snow Leopard установлен база для этой команды еще не создана. Ошибка при использовании выглядит так:

`/var/db/locate.database': No such file or directory

Я каждый раз забываю как создать/обновить базу для этой утилиты. Поэтому этот пост мне как заметка, ну и может кому-то тоже окажется полезным.

Чтобы создать/обновить базу для “locate” нужно запустить комманду:

sudo /usr/libexec/locate.updatedb

После этого можно использовать всю мощь этой команды.

Feb 01

Открыта предварительная регистрация на конференцию ZF Conf 2010 в Санкт-Петербурге

ZF Conf 2010 в Санкт-ПетербургеВ Санкт-Петербурге в конце марта 2010 года пройдет первая в России конференция посвященная Zend Framework.

На днях закончился прием тезисов по планируемым докладам. Примечательно, что в состав докладчиков вошли ведущие участники русскоязычного сообщества ZF, опытнейшие специалисты и лично один из создателей фрэймворка.

Участие в конференции планируется сделать бесплатным или за небольшую стоимость. На данный момент уже открыта предварительная регистрация на конференцию. Для решения ряда вопросов организаторам очень важно сейчас понять приблизительное количество человек, которые смогут посетить конференцию или каким-то иным образом принять участие в ней.

Read More

Jan 24

socprsc: We’re hiring! Community ambassador to Japan!

socprsc: We’re hiring! Community ambassador to Japan!