![]() ![]() ![]()
Какой рейтинг вас больше интересует?
|
Главная /
Каталог блоговCтраница блогера Хабрахабр: PHP / Блог / Захабренные/Записи в блоге |
![]() |
Хабрахабр: PHP / Блог / Захабренные
Голосов: 1 Адрес блога: http://habrahabr.ru/blog/php/ Добавлен: 2008-06-12 19:52:35 блограйдером ZaiSL |
[Из песочницы] QIWI и новый протокол REST в примерах
2013-10-23 12:10:35 (читать в оригинале)Приветствую.
Я являюсь давним читателем хабра и часто нахожу тут ответы на свои вопросы. Но вот так случилось, что ответа обнаружить не получилось. Причём нигде.
А задача была следующая. Реализовать новый (REST) протокол для системы QIWI. Мне пришлось потратить несколько дней, чтобы найти верное решение с помощью проб, ошибок, общений с менеджером и командой поддержки, т.к. примеров нигде нет, хотя задача не такая уж и сложная.
В данном сообщении я хочу поделиться теми примерами, которых мне так не хватало. Надеюсь, что это поможет кому-то.
Читать дальше →
PHP RUtils — небольшая библиотека для обработки русского текста
2013-10-22 14:07:56 (читать в оригинале)В работе на языке Python я частенько использую библиотеку Pytils для работы с русским текстом, и мне очень не хватало этой библиотеки при работе на PHP. Возможно, я искал плохо, но все, что я находил, не предоставляло подобных возможностей либо не слишком отвечало моим понятиям о чистом коде.
И вот, однажды я решил портировать библиотеку на PHP, и теперь хочу поделиться ею с народом и очень надеюсь на помощь в ее улучшении: буду рад советам, баг-репортам и особенно pull-реквестам. Библиотека находится на GitHub'е: github.com/Andre-487/php_rutils
Возможности библиотеки
PHP RUtils — порт Pytils на PHP. Это утилиты для работы с русским текстом. Утилиты разделены на следующие модули (классы):
- Numeral — работа с числами: склонение существительных в зависимости от количества, числа прописью, суммы денег в рублях и копейках прописью.
- Dt — работа с датами: расширение формата дат PHP русскими именами месяцев, дней недели; временные периоды (например, 24 976 дней назад).
- Translit — транслитерация, подготовка строк для использования в URL'ях, именах файлов.
- Typo — небольшой набор правил типографики простого текста.
Примеры кода и подробности
[Перевод] WAMP: перед установкой нового выпуска
2013-10-22 11:01:36 (читать в оригинале)Предисловие переводчика
Имея совсем небольшой опыт работы с набором WAMP (Windows Apache/MySQL/PHP), я столкнулся с необходимостью его переустановки как с целью обновления версий составляющих его частей, так и с целью установки openssl. Openssl в свою очередь мне необходим для использования composer, а composer для установки Laravel 4. Laravel 4 мне нужна просто из любопытства — хочется попробовать новую версию популярного фреймворка. Теперь вы знаете, что привело меня к переводу этой статьи, на которую я наткнулся в ходе поиска советов бывалых, уже прошедших этот путь людей, на форуме forum.wampserver.com/. Статья свежая, от 11 октября 2013 г., возможно кому-то из вас она и пригодится. Итак…
Читать дальше →
[Из песочницы] Переход на Selenium 2 + PhantomJS
2013-10-22 05:34:52 (читать в оригинале)В этом посте я запишу, как я переходил с Selenium RC на Selenium 2. Переход был мотивирован использованием PhantomJS в качестве браузера. В PhantomJS встроен Ghost Driver, который является WebDriver в том смысле, который использует Selenium 2. Но мои предыдущие тесты PHPUnit использовали класс PHPUnit_Extensions_SeleniumTestCase, который не умеет работать с WebDriver. Нужно было его заменить на PHPUnit_Extensions_Selenium2TestCase вместе со всем синтаксисом тестов.
Читать дальше →
[Из песочницы] Active Record против Data Mapper-а для сохранения данных
2013-10-21 20:16:05 (читать в оригинале)Эти 2 шаблона проектирования описаны в книге Мартина Фаулера «Шаблоны корпоративных приложений» и представляют собой способы работы с сохранением данных в объектно-ориентированном программировании.
Пример шаблона Active Record
class Foo
{
protected $db;
public $id;
public $bar;
public function __construct(PDO $db)
{
$this->db = $db;
}
public function do_something()
{
$this->bar .= uniqid();
}
public function save()
{
if ($this->id) {
$sql = "UPDATE foo SET bar = :bar WHERE id = :id";
$statement = $this->db->prepare($sql);
$statement->bindParam("bar", $this->bar);
$statement->bindParam("id", $this->id);
$statement->execute();
}
else {
$sql = "INSERT INTO foo (bar) VALUES (:bar)";
$statement = $this->db->prepare($sql);
$statement->bindParam("bar", $this->bar);
$statement->execute();
$this->id = $this->db->lastInsertId();
}
}
}
//Insert
$foo = new Foo($db);
$foo->bar = 'baz';
$foo->save();
В этом упрощенном примере, дескриптор базы данных вводится в конструкторе Foo (Использование инъекции зависимостей здесь позволяет тестировать объект без использования реальной базы данных), и Foo использует его, чтобы сохранять свои данные. Do_something — просто метод-заглушка, заменяющий бизнес логику. Читать дальше →



Категория «Спорт»
Взлеты Топ 5
![]() | ||
+310 |
316 |
Мой журнальчик |
+301 |
320 |
sib's Blog |
+276 |
289 |
Media_Sapiens |
+275 |
293 |
McMurphy |
+273 |
278 |
sich |
Падения Топ 5
![]() | ||
-2 |
2 |
Ужосный_Типп |
-2 |
6 |
спорт Волгоград |
-3 |
5 |
master |
-5 |
3 |
Футбол в России и за рубежом |
-7 |
188 |
Новости ForDiving.ru |

Популярные за сутки
Загрузка...

BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.