Перевернуть строку на PHP

Самая популярная задача на собеседованиях это переворот строки без использования функции srtrev. Решил добавить свои 5 копеек, какой я вижу эту задачу. Первое решение на знание других встроенных функций (никто ведь не запрещал использовать их).

Сниппет для форматирования телефонных номеров

Задача. Есть большой список телефонных номеров, которые нужно переформатировать под единый формат (или форматы). Номера есть нескольких типов 7, 10 и 11 значные. Для каждого из этих типов необходимо вывести номер телефона в своем формате. В php есть такие функции как money_format и number_format, но нет такой функции как phone_format, этот пробел я и […]

Как поменять местами значения в колонках таблицы

Условия задачи: есть MySQL таблица table1. Используя только язык SQL запросов необходимо поменять местами значения из колонок value1 и value2. Структура таблицы имеет следующий вид: CREATE TABLE `table1` ( `id` INT NOT NULL AUTO_INCREMENT , `value1` VARCHAR(50) NOT NULL DEFAULT » , `value2` VARCHAR(50) NOT NULL DEFAULT » , PRIMARY KEY (`id`) ) ENGINE = MyISAM;

Особенности работы Docker контейнеров MySQL и Nginx на OSX

В ожидании релиза Docker for mac приходится использовать Docker Machine и решать проблемы которые он создает при работе с Data Volumes. О решении проблем в MySQL и Nginx я бы и хотел рассказать. Официальный контейнер MySQL работает как и ожидаешь, пока в файле docker-compose.yml не добавлено хранение /var/lib/mysql на Data Volume:

Конвертация таблиц MySQL из MyISAM в InnoDB

Вот простой трюк для перевода всех MySQL MyISAM таблиц в таблицы InnoDB. Сперва необходимо подготовить файл содержащий список SQL запросов на конвертацию каждой таблицы в отдельности. Это просто сделать выполнив следующий запрос (заменив your_database_name на имя базы):

В чем отличие .bash_profile и .bashrc

Работая с Линуксом, необходимо постоянно помнить, какой «профиль» нужно редактировать для автоматической установки переменных среды. Согласно документации по bash, файл .bash_profile исполняется для оболочек, осуществляющих авторизацию пользователя, а файл .bashrc исполняется для интерактивных оболочек, не авторизующих пользователя.

Использование нескольких конфигураций Sphinx

Разрабатывая на одном хосте несколько сайтов с поддержкой Sphinx Search меня всегда раздражала невозможность использования несколько конфигурационных файлов одновременно единственным демоном Sphinx, а также отсутствие простых готовых решений для реализации подобного функционала. К написанию своего решения этой проблемы меня подтолкнула заметка о том что в качестве конфигурационного файла можно использовать любой скрипт, в том числе […]

Имплементация LRU кэша на Go

LRU: Least Recently Used — алгоритм кэширования, при котором вытесняются значения, которые дольше всего не запрашивались. Алгоритмическая сложность O(1), а потому кеш работает очень быстро и используется в memcached. Кеш имеет очередь фиксированного размера. Когда новый элемент попадает в кеш, то добавляется в начало очереди. При запросе элемента очередь выталкивает элемент […]

Среднеквадратическое отклонение

Расскажу о среднеквадратическом отклонении на примере собак. Имея группу собак рост которых 600, 470, 170, 430 и 300 мм. Как узнать какие из этих собак большие, какие маленькие, а какие можно отнести к средним? Тут на помощь приходит среднеквадратическое отклонение — σ (греческая буква сигма). Формула очень проста: этоквадратный корень из дисперсии случайной величины. Что такоедисперсия? Это среднее […]