c ×

Разработка расширений php: Классы, интерфейсы, методы — Часть 2

Воскресенье, 23 декабря 2012 г. Опубликовал POPSuL

И снова я тут…

Продолжаем разбираться с интерфейсами и методами, и сегодня мы поговорим о реализации интерфейсных методов в классах. Сегодня мы познакомимся с тем, как реализовать на уровне PHP‐расширения код аналогичный этому:

interface IWorld {
    public function say();
}
class Hello implements IWorld {
    public function say() {
        printf("Hello world");
    }
}

Чтож, приступим…

Разработка расширений php: Классы, интерфейсы, методы

Воскресенье, 16 декабря 2012 г. Опубликовал POPSuL

Наступили выходные, прошел IT.conf_2012

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

Разработка расширений php: возвращаемые значения

Вторник, 04 декабря 2012 г. Опубликовал POPSuL

Продолжаем разбирать расширения PHP на составляющие…

Сегодня мы поговорим о том, как возвращать некие значения из функций. В предыдущих статьях мы уже встречались с макросом RETURN_STRING (), сегодня мы узнаем о других макросах для возвращения результатов с типом, отличном от строки. А в частности, мы разберемся как вернуть из функции string, boolean, long, double, array.

Разработка расширений php: аргументы функций

Понедельник, 03 декабря 2012 г. Опубликовал POPSuL

Продолжаем знакомиться с тем, как же все таки писать свои расширения PHP…

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

Разработка расширений php: hello world

Воскресенье, 02 декабря 2012 г. Опубликовал POPSuL

Вступление

По работе мне приходится перерабатывать и улучшать производительность нашего студийного продукта Simple CMS — CMF ориентированная на быструю разработку модулей, админской части этих модулей, а так же быстрого создания конечных продуктов — сайтов. В данном продукте, собственно, как и в любом другом, есть критические места которые работают не так быстро как хотелось бы, и очень хочется их ускорить. Но как ускорять то, что уже просто невозможно ускорить на уровне PHP? Правильно — сделать аналогичные функции и методы в php расширении, а написанный код который работает не так быстро как хотелось бы — оставить для совместимости с теми интерпретаторами, где не будет данного модуля.

Хочу заметить, на данный момент расширение не написано даже на 1%, но я надеюсь что я дойду до того этапа, когда оно будет работать хотя бы с багами.

Далее будет описано как создать hello world за пять минут.

← сюда туда →