Архив метки: snippets

Определение мобильного устройства на PHP

Порой нужно определить с мобильного устройства пришел пользователь или же с обычного компьютера.
Существует много различных библиотек для этого. Если же нет возможности подключить более полноценную библиотеку, то можно воспользоваться следующим способом.
Читать далее

Удалить весь JavaScript из текста сообщения

Для удаления всех JavaScript-ов из текста сообщения можно воспользоваться следующим регулярным выражением:
/<script\b[^>]*>(.*?)<\/script>/is
В PHP делаем вот так:

$textClear = preg_replace('/]*>(.*?)<\/script>/is', '', $text);

Управление memcached через cli

Как известно у memcached нет своего консольного клиента для работы с ним, но иногда необходимо посмотреть статистику сервера memcached или выполнить ту или иную операцию с ним: добавить значение, удалить значение, очистить кеш и др..

Из консоли linux можно сделать запрос на IP:PORT сервера и выполнить необходимые.

В общем случае это выглядит так:
echo "command" | nc 127.0.0.1 11211
или
echo "command" | nc -U ~/memcached.sock
где:
command — выполняемая команда
127.0.0.1 — адрес где запущен сервер memcache
11211 — порт
memcached.sock — сокет процесса memcached

Например, для полного сброса кеша необходимо выполнить
echo "flush_all" | nc 127.0.0.1 11211
или
echo "flush_all" | nc -U ~/memcached.sock
Для получения статистики сервера:
echo "stats" | nc 127.0.0.1 11211
Для получения дополнительной статистики необходимо выполнить
echo "stats slabs" | nc 127.0.0.1 11211

Конвертирование видео для XBOX360 на Linux

Недавно, столкнулся со следующей задачей.

Есть роутер которые с подключенного винчестера в локальную сеть шарит медиа-данные: музыку, видео, фото и прочее. Сам роутер не обладает функцией транскодирования видео потоков, а не все девайсы умеют показывать видео в HD. Xbox 360 не стал исключением.

Изучив документацию по поддерживаемым форматам, было решено подготавливать видео для приставки закодированное h264 кодеком. Конвертировать будем на машине с установленным Linux. Для этого необходимо установить пакет ffmpeg. 

Видео будем брать в формате mkv, хотя принципиальной разницы нет, есть разница в скорости кодирования и копирования файлов.

Читать далее

Как определить день недели

Для того чтобы узнать день недели определённой даты, не возникает особой сложности.
Например в PHP это можно сделать так

date("N"); // Порядковый номер дня недели в соответствии со стандартом ISO-8601 (добавлен в версии PHP 5.1.0). от 1 (понедельник) до 7 (воскресенье)
date("L"); // Полное наименование дня недели. От Sunday до Saturday
date("n"); // Порядковый номер дня недели. От 0 (воскресенье) до 6 (суббота)

подробнее можно прочитать в документации к функции date()
Читать далее

Считаем полное количество лет на php

Маленькая, но очень полезная функция для подсчета возраста, количество полных лет на PHP

function getFullYears($birthdayDate) {
            $datetime = new DateTime($birthdayDate);
            $interval = $datetime->diff(new DateTime(date("Y-m-d")));
            return $interval->format("%Y");
}

Функция принимает один параметр — дату рождения, возвращает — количество лет.

Удалить все символы из строки, оставить только цифры на php

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

$strWithoutChars = preg_replace('/[^0-9]/', '', $str);

Всё.