PHP + DOCX

DOCX формат это обычный ZIP архив, который можно открыть любым архиватором.

Структура docx

Структура docx

Алгоритм использования кодов HTTP заголовков

Алгоритм использования кодов HTTP заголовков

Карта Яндекс.Денег

Яндекс.ДеньгиПриехал домой и увидел конверт от Яндекс.Денги, с пластиковой картой MasterCard.

Карту можно оформить бесплатно, после получения карты почтой России, карту необходимо активировать на сайте Яндекс.Денги. И последним этапом будет получение ПИН кода. Для того, что бы получить ПИН код необходимо позвонить по номеру 8 (800)-555-25-30, оператор спросит ваше Ф. И. О., четыре последних цифры карты, и кодовое слово указанное при оформлении карты, далее вас переключат на автоматическую систему генерации ПИН кода.

Массовое копирование элементов ИБ в админке 1C Bitrix

Появилась необходимость копировать элементы внутри ИБ в другой раздел. В Битриске можно копировать только по одному элементу, и это не удобно когда надо скопировать более ста элементов в другой раздел.
Для начала нам надо добавить в список действий новое новое действие – «копировать».
Открываем файл — /bitrix/modules/iblock/admin/iblock_element_admin.php, находим строку 1895. Там объявляет массив с событиями:

$arActions = array(
	"delete" => GetMessage("MAIN_ADMIN_LIST_DELETE"),
	"activate" => GetMessage("MAIN_ADMIN_LIST_ACTIVATE"),
	"deactivate" => GetMessage("MAIN_ADMIN_LIST_DEACTIVATE"),
);

Баг в eAccelerator с open_basedir

Вчера настраивая eAccelerator на VPS столкнулся с проблемой связанной с open_basedir.

В лог записывались следующие ошибки:

PHP Warning: require(): open_basedir restriction in effect. File() is not within the allowed path(s);

PHP Warning: Unknown: open_basedir restriction in effect. File() is not within the allowed path(s);

Версия eAccelerator – 0.9.6.1

Решает этот баг исправлением одной строчки кода в исходнике eAccelerator – eaccelerator.c, строка 867:

if (php_check_open_basedir(realfilename TSRMLS_CC)) {

на

if (php_check_open_basedir(p->realfilename TSRMLS_CC)) {

После всего заново компилируем eAccelerator, переустанавливаем.

Удачи! ;-)

Вычисление возраста с помощью Zend_Date

< ?php

class Fr_Date extends Zend_Date
{
    public function getCountYear($date)
    {
        $date = new Fr_Date($date);

        $this->subYear($date->get(Zend_Date::YEAR))
             ->subMonth((int)$date->get(Zend_Date::MONTH) - 1)
             ->subDay((int)$date->get(Zend_Date::DAY) - 1);
 
        return $this->get(Zend_Date::YEAR);
    }
}

Memcached в PHP — просто с Zend Framework

zend frameworkПрименение Memcached для улучшения быстродействия ваших приложений может быть сделано довольно быстро без использования Zend Framework. Если вам нужен только Memcached, пропустите часть про Zend Framework (и, по всей видимости, всю статью). С другой стороны, если вы используете Zend Framework, но не используете Memcached, эта статья поможет вам начать это делать. Но, в любом случае: Если вы до сих пор не используете Memcached, начинайте прямо завтра.

Инвайты на google wave

google wave logo

Есть не сколько инвайтов на волны.
В коментах оставляйте адрес.

Лечимся от злобного вируса Kido

Для начала устанавливаем обновления для Windows:

MS08-067, MS08-068, MS09-001

После качаем KidoKiller запускаем KK.exe.

Скрин странички сайта во весь рост

Если ты пользуешься Firefox’ом, то для того что бы сделать скрин во весь рост тебе поможет плагин Screengrab. После установки плагина в статусной строке появиться новая иконка.

Версия 0.96.2
Работает с Firefox: 3.0 – 3.5.*
Последнее обновление July 17, 2009
Разработчик Andy M
Домашняя страница http://www.screengrab.org