<rmcreative>

RSS

Все заметки с тегом «PHP»

Можно уточнить:

  1. Как выкинуть исключение в __toString и к чему это приведёт

    20 марта 2010

    Как известно, исключения кидать в __toString() PHP запрещает. Выглядит это не очень-то логично, но запрещено не просто так. Вообще __toString() — штука крайне нестабильная и сложная в отладке.

    Оказалось, что исключение в __toString() выкинуть всё-таки можно при помощи своего обработчика ошибок и приведёт это довольно неожиданным результатам.

    Читаем

    3 комментария
  2. Opricot, инструмент для администрирования MongoDB

    15 марта 2010

    Ещё один инструмент для управления нереляционным хранилищем MongoDB. Отличается от всех остальных приятным внешним видом и довольно обширным функционалом.

    Пробуем

    Комментировать
  3. Yii 1.1.1 и 1.0.12

    14 марта 2010

    Немного не по графику состоялся релиз PHP-фреймворка Yii версий 1.1.1 и 1.0.12.

    Исправлено более двадцати ошибок. Добавлено более тридцати улучшений и новых возможностей, некоторые из которых могут существенно увеличить скорость разработки с использованием Yii.

    • Виджет CActiveForm, позволяющий реализовать валидацию HTML форм как на клиенте, так и на сервере, использую один набор правил модели.

    • Виджет CGridView теперь поддерживает фильтры.

    • Генерируемый yiic код содержит функции поиска и фильтры.

    • Кнопки и ссылки CHtml теперь замечательно работают с AJAX.

    • При пакетном присваивании свойств модели в режиме отладки в лог попадает то, что было отфильтровано.

    • jQuery обновлён до 1.4.2, JQuery UI — до 1.8rc3.

    • Русскоязычная документация обновлена до 1.1.1 и находится в полностью актуальном состоянии.

    Приятным дополнением к релизу стало то, что я теперь буду работать над ядром Yii.

    7 комментариев
  4. JetBrains PhpStorm 94.505

    8 марта 2010

    И ещё один билд PhpStorm.

    • Нарисовали новые красивые значки и картинки.

    • Дополнение кода PHP теперь выдаёт варианты из текущей области видимости. При повторном нажатии CTRL+SPACE — все варианты. Работает быстрее, пользоваться удобнее.

    • Новый визард создания удалённого проекта. Можно задать исключения по маске. В следующих билдах обещают ещё больше вкусностей.

    • Почити починили PHPUnit. В следующем билде, скорее всего, будет работать как надо.

    Список исправлений

    Официальный анонс

    Пробуем и обновляемся

    UPD: незаметно выкатили билд 94.506.

    2 комментария
  5. JetBrains PhpStorm 94.430

    1 марта 2010

    Вышел очередной билд PhpStorm. Получился довольно вкусным.

    • Сетевые папки.

    • Живой предпросмотр настроек форматирования.

    • SASS в редакторе.

    • Автоинъекция HTML в литералах PHP.

    • Облегчение запуска на Linux.

    • Вертикальные гайдлайны.

    • Свои разделители для Smarty.

    • Улучшена скорость дополнения кода и редактора в целом.

    Дело идёт к бете. Новые билды теперь будут выпускаться каждую неделю. Новые возможности скоро принимать перестанут, так что если у вас есть идеи — обязательно пишите в трекер. Об ошибках сообщайте туда же.

    Официальный анонс

    Полный список изменений

    Пробуем и обновляемся

    6 комментариев
  6. Symfony 2 alpha

    18 февраля 2010

    Запущен сайт Symfony 2 с некоторыми подробностями и альфа-версией фреймворка.

    Чтобы поиграться с ней нужен PHP 5.3.2. Все его возможности используются по полной.

    Фреймворк я успел лишь поверхностно рассмотреть, но кое-что запомнилось:

    • Пространства имён и другие приятности PHP 5.3.

    • Параметры в контроллер из роутера поступают сразу в методы. Почти как в CodeIgniter, только лучше — тут их можно именовать.

    • Наконкец, нормальная передача параметров View (как в Yii, CodeIgniter), а не странное наполнение свойств контроллера, как в symfony 1.

    • View стал логически проще. Убрали лишние сущности, но зато сделали оставшиеся очень мощными.

    • Более логичная файловая структура (напоминает Yii).

    • Подробный логгер (опять же похож на тот, что есть в Yii).

    • Мощная автозагрузка классов (и опять же, это было в Симпсонах!).

    • Кешируется и копмилируется всё, что только может за счёт этого он быстрый (3×ZF, 2×Yii) и кушает мало памяти.

    И немного странностей:

    • Своеобразное указание пути к шаблону View и использование Layout. Плохо или хорошо это — сказать пока не могу.

    • Хелперы View предствалены как объекты внутри некой переменной $view. Выглядит магически.

    • В PHP конфигурация выглядит жутко, в yaml всё также легко ошибиться. А вот XML ничего так. С дополнением и валидацией.

    Релиз намечается на самый конец 2010. Пока же можно познакомиться с презентацией, официальным сайтом и попробовать альфу.

    10 комментариев
  7. PhpStorm и WebStorm (Web IDE 94.335)

    17 февраля 2010

    Именно так теперь будут называться PHP и веб редакции WebIDE. В вышедшем билде

    94.335 ещё есть следы брендинга WebIDE, но в следующих билдах всё будет как надо.

    Стоит отметить

    • Очень мощный форматтер. Теперь с опциями. Превью пока не работает.

    • Дебаггер PHP теперь кушает меньше памяти и работает стабильнее.

    • Редактор PHP стал дополнять ещё лучше и теперь отлично работает с HEREDOC.

    • Появилась возможность настроить автоматическую заливку проекта на сервер.

    • Улучшена поддержка Smarty. Поддерживаются некоторые возможности беты Smarty 3.

    • Поддержка SASS для CSS.

    Все изменения в свежем билде

    Официальный анонс

    Пробуем и обновляемся

    update

    Опубликован официальный анонс на Хабре

    4 комментария
  8. Вызов private-метода из static-метода

    15 февраля 2010

    Вот таким чудом озадачили меня Фёдор (unno.ru) и mihailt.

    class A {
      private function action(){
        echo 1;
      }
      public static function callAction(A $a){
        $a->action();
      }
    }
     
    $a = new A;
    A::callAction($a);
    1. Это работает.

    2. Я сомневаюсь, что могу на 100% верно объяснить, почему оно работает.

    Если вы сможете — обязательно напишите в комментариях.

    update

    Контекст модификаторов — класс, а не объект! И верно это для всех популярных реализаций ООП (на всякий случай проверили АS3 и Java).

    39 комментариев
  9. MVC: Front Controller, Controller и Router

    12 февраля 2010

    В прошлый раз я описал построение простейшего, но довольно функционального компонента View. В этот раз займёмся Front Controller, Controller и Router. Код, приведённый ниже может не запускаться, не является безопасным, но объясняет общие принципы работы большинства MVC-фреймворков.

    Читаем

    27 комментариев
  10. Форматирование кода в IDE

    11 февраля 2010

    Год назад Zend Studio выгодно выделялась наличием отлично настраиваемого форматтера кода. Остальные популярные IDE (за исключением, может PhpEd) такой замечательной возможности не имели, либо настроек было по минимуму.

    Сейчас ситуация меняется. NetBeans в довольно хорошем темпе обзаводится приятным форматтером:

    Всё это можно попробовать в свежей ночной сборке.

    В Web IDE форматтер тоже вроде имеется, но настраивать его пока возможности нет. К релизу вроде обещали сделать настройки.

    3 комментария