Как в PHP декодировать содержимое email-письма

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

Как подсчитать доход с займов по кредитным лимитам в сервисе Webmoney Debt

Так случилось, что в разделе «Займы, которые я выдал» (https://debt.web.money/Credits.aspx) сервиса Webmoney Debt отсутствует экспорт отчёта. А вам как назло хочется получить все данные с этой страницы в виде Excel-таблицы и провести аналитику. К счастью это можно сделать, выполнив на странице JavaScript сценарий. В сервисе используется библиотека jQuery и сделать это будет легко и просто. Привожу пример скрипта для подсчёта суммы выданных займов, суммы для возврата и разницы между ними: (далее…)

Pipe Viewer: prograssbar для консольных утилит в Linux

Рассмотрим сценарий, когда вы только начали копировать очень большой файл с флэш-накопителя на вашей системе Linux с помощью командной строки. Учитывая, что данный файл является тяжелым, вы знаете, процесс займет некоторое время, и поэтому вы начинаете делать другую работу. Через некоторое время вы вернулись, только чтобы увидеть, что команда все еще работает. Вы сами решаете, дать продолжатся операции копирования еще некоторое время. Через некоторое время, когда вы посмотрите еще раз, вы наблюдаете, что ничего не изменилось, то есть процесс копирования не закончился, и команда не показало ошибку. (далее…)

Смена раскладки в Windows 10 по нажатию Caps Lock

Делаем так, чтобы при нажатии Caps Lock в Windows 10 менялась раскладка клавиатуры. Не помню точно момент, когда я стал на всех машинах и ОС перебивать дефолтный Shift + Alt на Caps Lock. Хотелось попробовать, а рациональные аргументы были такие, что меньше кнопок жать, и вообще капс никто и нигде не использует. Сейчас я уже настолько к этому привык, что по-другому просто неудобно. (далее…)

Docker and IPtables

TL;DR; By default, docker daemon appends iptables rules for forwarding. For this, it uses a filter chain named DOCKER.

Chain FORWARD (policy DROP)
target     prot opt source               destination
DOCKER     all  --  0.0.0.0/0            0.0.0.0/0
...

Chain DOCKER (1 references)
target     prot opt source               destination
Moreover, when you tell docker to expose a port of a container, it exposes it to the entire world, breaking your possibly existing iptablesrules. (далее…)

Как научиться играть на гитаре быстро

Быстрее!!! Это слово, словно маяк на горизонте, движет многими начинающими гитаристами. Особенно когда дело касается электрогитары. И неудивительно, ведь послушав записи таких мастеров, как Ингви Мальмстин и Джо Сатриани, практически каждый, кто в состоянии отличить фендер от ибанеза, загорится желанием проделать то же самое - повторить эти невероятные запилы и мозговыносящие пассажи. Вы из их числа? Тогда добро пожаловать в серию уроков, посвященную лишь одной теме: «КАК ИГРАТЬ БЫСТРЕЕ?»

(далее…)

Golang — изящная обработка ошибок

Несмотря на то, что в go предусмотрена простая модель ошибок, на деле все не так уж и просто. В данной статье я хочу рассказать вам об эффективном способе обработки ошибок и решения сопутствующих проблем.

Для начала, необходимо понять, что именно считается ошибкой в go.

Затем рассмотрим весь процесс, от создания ошибки до ее обработки и проанализируем возможные изъяны.

(далее…)

Грандиозный FAQ по Go Lang

Какие максимальные значения int и uint в Go?

Поскольку целочисленные типы используют двоичную арифметику, можно вычислить их предельные значения подобных образом:
const MaxUint = ^uint(0) 
const MinUint = 0 
const MaxInt = int(MaxUint >> 1) 
const MinInt = -MaxInt - 1
(далее…)


Любишь мемасики?

Подпишись на мой телеграм-канал!

Открыть
Закрыть