<rmcreative>

RSS

Все заметки с тегами «php, mystuff»

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

    (1)
    (3)
  1. (1)
    (1)
  1. (1)
    (1)
  1. (1)
  2. (1)
    (1)
    (1)
    (1)
  1. (4)
  2. (1)
  3. (1)
  1. Обновление Rolling Curl

    13 сентября 2010

    Обновился rolling-curl — PHP-класс для параллельного выполнения большого количества асинхронных HTTP-запросов при помощи curl, который я начал поддерживать в мае 2010.

    Пример использования можно посмотреть в анонсе библиотеки. Сегодня я остановлюсь на изменениях, сделанных в основном LionsAd, за что ему огромное спасибо.

    • Исправлена ошибка, не позволяющая перезаписать значения из конфигурации CURL по умолчанию.
    • Теперь используется curl_multi_select, что должно убрать излишнюю нагрузку на процессор.
    • В параметры обработчика теперь передаётся $request, содержащий соответствующий объект запроса.
    • Класс Request переименован в RollingCurlRequest.
    • Добавлен функционал для работы с группами запросов. Смотрите RollingCurlGroup и README.
    • Теперь можно настроить таймаут для curl_multi_select.
    • single_curl теперь возвращает true.
    • Улучшенный README с дополнениями.

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

    21 комментарий
  2. rolling-curl

    13 мая 2010

    rolling-curl — PHP-класс для параллельного выполнения большого количества асинхронных HTTP-запросов при помощи curl, написанная Josh Fraser и поддерживаемая на данный момент мной.

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

    Пример:

    // URL, которые будем обрабатывать
    $urls = array(
      "http://www.google.com",
      "http://www.facebook.com",
      "http://www.yahoo.com",
    );
     
    // функция для обработки ответа
    function request_callback($response, $info) {
      // получаем title страницы
      if (preg_match("~<title>(.*?)</title>~i", $response, $out)) {
        $title = $out[1];
      }
      echo "<b>$title</b><br />";
      print_r($info);
      echo "<hr>";
    }
     
    $rc = new RollingCurl("request_callback");
    // одновременно позволим не более 20 запросов
    $rc->window_size = 20;
    foreach ($urls as $url) {
        // добавляем запросы в очередь
        $request = new RollingCurlRequest($url);
        $rc->add($request);
    }
    // запускаем
    $rc->execute();

    Пользуемся

    49 комментариев
  3. Свежая сравнительная табличка по PHP IDE

    6 декабря 2009

    Обновил сравнительную табличку по PHP IDE:

    • Добавлена WebIDE.

    • Некоторые уточнения по NetBeans и Zend Studio.

    Рассматриваем

    23 комментария
  4. Dwoo view renderer для Yii

    13 октября 2009

    Позволяет использовать шаблоны ещё одной альтернативы шаблонизатора Smarty — Dwoo в PHP-фреймворке Yii.

    Пользуемся

    Комментировать
  5. Smarty view renderer для Yii

    11 октября 2009

    Ну и чтобы не обижать вполне живого старичка Smarty, написал рендерер для Yii и под него.

    Пользуемся

    Инструкция:

    'viewRenderer'=>array(
      'class'=>'application.extensions.Smarty.CSmartyViewRenderer',
      'fileExtension' => '.tpl',
      //'pluginsDir' => 'application.smartyPlugins',
      //'configDir' => 'application.smartyConfig',
    ),

    Свойства текущего контроллера доступны как {this->pageTitle}.

    11 комментариев
  6. Quicky view renderer для Yii

    11 октября 2009

    Ещё одно расширение на ту же тему. Позволяет использовать шаблоны Quicky в Yii.

    Пользуемся

    Комментировать
  7. The Big PHP IDE Test: Why Use One And Which To Choose

    12 февраля 2009

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

    Рассказал про самые интересные штуки в современных PHP IDE и сравнил несколько наиболее популярных на текущий момент.

    Опубликовался в Smashing Magazine.

    Огромное спасибо Константину за графическое оформление статьи, Владимиру за табличку и саму идею сравнить, Антону за критику и правки, читателям RMCreative и Хабрапользователям за полезные замечания.

    Читаем

    10 комментариев
  8. Валидация данных в PHP при помощи filter_var

    11 февраля 2009

    Основой безопасности любого приложения является простое правило: «пришедшим от пользователя данным доверять нельзя». Для этой цели пишется довольно большое количество кода, хотя типичные задачи можно решить стандартными средствами PHP ничего не изобретая.

    Например, таким образом можно проверить адрес e-mail при помощи filter_var:

    if (filter_var($user_email, FILTER_VALIDATE_EMAIL)) {
      // правильный
    }

    также можно убрать лишнее, например, из URL:

    $sanitized_url = filter_var($url, FILTER_SANITIZE_URL);

    Хотя filter_var() есть в стандартном PHP начиная с версии 5.2.0, документация на него, особенно русская, хромает.

    Нормальная документация и примеры:

    Руководство w3schools.

    Input Validation: Using filter_var() Over Regular Expressions.

    Data Filtering Using PHP's Filter Functions

    18 комментариев
  9. Простой способ создать XLS

    3 октября 2008

    Есть очень простой способ создать MS Excel табличку. Достаточно записать в file.xls HTML-код:

    Читаем

    18 комментариев
  10. Русские языковые файлы для CodeIgniter 1.6.3

    7 июля 2008

    Обновлён перевод. Добавлены строки для нового хелпера Number.

    Забираем

    5 комментариев