Latest Posts

Timezone для сервера (Ubuntu+PHP+MySQL)

Меняем правильную тайм зону для PHP интерпретатора. Открываем INI конфигурацию: /etc/php/apache2-php5.4/php.ini Ищем запись с data.timezone и ставим нужный часовой пояс: date.timezone = Europe/Moscow Меняем часовой пояс на Ubuntu. Текущая дата на сервере: date Текущий часовой пояс: more /etc/timezone Чтобы поменять…
Read more

Тестирование приватных методов в PHPUnit

Для тестирования приватных методов класса через PHPUnit можно воспользоваться специальным классом ReflectionClass, забрать нужный приватный метод и сделать его доступным. Все это делается динамически и при помощи таких движений можно тестировать абсолютно любые методы класса разной области видимости. Приведем пример:…
Read more

Лимиты на загрузку файлов в php.ini

Лимиты на загрузку файлов PHP необходимо искать в настройках php.ini и менять по требованию: post_max_size = 50M Показывает возможный объем загрузки файлов за один POST запрос. upload_max_filesize = 50M Показывает максимальный объем одного файла при загрузке на сервер. memory_limit =…
Read more

Translation component для Yii

Чтобы не упустить перевести все метки в Yii первой версии имеется соответсвующие событие OnMissingTranslation. Оно позволяет задавать нужный handler для обработки пропущенных переводов.   Достаточно написать компонент для этого: class Translation extends CApplicationComponent { public static function handler($messageEvent) { Yii::log(«‘»…
Read more

OpenPGP и режим PHP-CLI

При установке расширения OpenPGP скорее всего записи об установке и конфигурационные файлы будут обновлены только для настроек интерпретатора при работе через nginx, apache и тд Расширение не ставится по умолчанию для консольной работы PHP. Чтобы прописать пусти и настройки OpenPGP…
Read more

Функция получения баланса любого адреса Bitcoin

При помощи сервиса Blockchain.info можно узнавать финальный баланс запрашиваемого bitcoin адреса просто обратившись через GET запрос к серверу блокчейна. Для этого мы просто напишем функцию, которая будет отправлять запрос и выдавать json данные по финальному балансу адреса: function getAddressInfo($address) {…
Read more

Access Control Yii2 + анонимная функция

В Yii2 появилась возможность повесить свою бизнес логику в виде анонимной функции для контроля доступа к странице. Теперь вы можете делать какие-то действия и возвращать либо true либо false для доступа к странице. Сделать это можно следующим образом: public function…
Read more