Archive for the ‘Прочее’ Category

опубликовал .
Я знал, что через ZF это сделать просто, но, оказалось, даже проще, чем я думал. Например, вот так выглядит создание XML-RPC-сервера:

1
2
3
$server = new Zend_XmlRpc_Server();
$server->setClass('My_Awesome_Api');
echo $server->handle();

Также не следует использовать для этих целей полноценный MVC — просто незачем проходить полный цикл диспатчеризации, если можно заменить его куда более производительным сервис-сервером:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class XmlRpc_Bootstrap extends Bootstrap
{
    public function run()
    {
        $server = new Zend_XmlRpc_Server();
        $server->setClass('My_Awesome_Api');
        echo $server->handle();
    }
}

$app = new Zend_Application(
    APPLICATION_ENV,
    (
        'bootstrap' => (
            'class' => 'XmlRpc_Bootstrap',
            'path'  => 'path/to/Bootstrap.php',
        ),
        'config' => APPLICATION_PATH . '/configs/application.ini',
    ),
);
$app->bootstrap()
    ->run();

Подробности читайте в .

Здравствуйте.
Думаю, многие из вас сталкивались с проблемой склонения существительных в зависимости от какого-либо числа. Например, “15 дней”. А если будет 21, выводить “21 дней”? Для решения этой проблемы написано , но я не встречал реализации в виде помощника Zend_View. Итак, встречайте: App_View_Helper_Plural.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Helper_View_Plural extends Zend_View_Helper_Abstract
{
    public function plural($n, $form1, $form2, $form3) {
        $plural = ($n % 10 == 1 && $n % 100 != 11 ? 0 : ($n % 10 >= 2 && $n % 10 <= 4 && ($n % 100 < 10 or $n % 100 >= 20) ? 1 : 2));
        switch($plural) {
            case 0:
            default:
                return $form1;
            case 1:
                return $form2;
            case 2:
                return $form3;
        }
    }
}

Использование (в шаблоне):

1
2
3
echo '1 ' . $this->plural(1, 'день', 'дня', 'дней') . '<br>';
echo '4 ' . $this->plural(4, 'день', 'дня', 'дней') . '<br>';
echo '25 ' . $this->plural(25, 'день', 'дня', 'дней');

Вывод:

1 день
4 дня
25 дней

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

Ниже опубликован перевод статьи .

В этой статье я буду рассуждать о развитии и нововведениях Zend_Loader_Autoloader и смежного функционала. Тем не менее, основная цель статьи — показать различные проектировочные решения, которые ведут к созданию всеобъемлющего автозагрузчика для ваших PHP-приложений. Автозагрузка, внешне тривиальная задача, имеет много тонкостей, которые часто упускают.
Continue reading ‘Разработка всеобъемлющего автозагрузчика’ »

В было опубликовано . Как оказалось, всё просто и удобно. Рекомендую к прочтению.

Ниже опубликован перевод заметки . В ней доступно и кратко описано базовое использование компонента Zend_Pdf.
Continue reading ‘Создание pdf-файлов с использованием компонента Zend_Pdf’ »

С первых версий ZF’а очень часто появляются отзывы об обилии багов. Как известно, говорят все, а реально что-то делают совсем немного людей. С выходом ZF 1.7 мы наблюдаем очередную порцию жалоб. Всё же есть немало людей, кто просто ленится разбираться с .
В связи с этим публикую это руководство, в котором в деталях расскажу, как добавить баг в Zend Framework Issue Tracker.
Continue reading ‘Советы по использованию багтрекера ZF’ »

Приветствую.
Продолжим начатый ранее обзор возможностей Action-хэлпера ContextSwitch. В этот раз мы будем совершенствовать нашу работу с AJAX, а точнее с AJAH.
Continue reading ‘Переключая контенты – работа с AJAH’ »

К сожалению, далеко не все следуют при разработке своих скриптов. Признаюсь, и я нередко отступаю от них, а иногда и вовсе забываю некоторые моменты. Поэтому и пишу эту краткую памятку по их использованию.
Continue reading ‘Памятка по стандартам кодирования’ »

Всем привет.
В последнее время я всё чаще использую Zend_Action_Helper_ContextSwitch, и с каждым разом он нравится он мне всё больше. Сейчас я расскажу вам о его возможностях и приведу примеры использования.
Continue reading ‘Переключая контенты – экспорт в RSS’ »

В опубликована заметка под названием . В ней предложен простой и удобный способ отправки сообщений в Twitter:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
require_once 'Zend/Http/Client.php';

$http = new Zend_Http_Client('http://twitter.com/statuses/update.xml', (
    'maxredirects' => 0,
    'timeout'      => 10,
));

$http->setAuth(
    'twitter_username',
    'twitter_password',
     Zend_Http_Client::AUTH_BASIC
);

$http->setMethod(Zend_Http_Client::POST);
$http->setParameterPost('status', 'Your status message');
$http->request();

?>

Просто, не правда ли?

В процессе обсуждения оригинала заметки всплыли следующие ссылки:

info@zend-framework.ru