Как проверить число на чётность в любом языке программирования?

Есть очень простое и элегантное решение основанное на свойстве двоичных чисел: число нечётное только тогда, когда его младший бит установлен в 1. С помощью битовой операции & (и) можно это проверить.

Поменять местами значения переменных в PHP

Существует красивое и элегантное решение в одну строку: list($a, $b) = [$b, $a]; А для PHP версий 5.3 и старше можно воспользоваться сокращённым вариантом: [$a, $b] = [$b, $a]; Что более читаемо и проще, чем классическое: $tmp = $a; $a = $b; $b = $tmp; Кроме того, таким образом можно […]

Ротация логов docker контейнеров

В продолжение прошлой статьи рассмотрим пример настройки ротации логов контейнеров на примере CentOs 7. В моём случае stdout и stderr контейнеров никакой ценности не имеют, а все значимые события пишутся либо в примонтированные директории, либо в Apache Kafka. В ротации логов внутри самих контейнеров не вижу смысла.

Big Data & Brews

Набрёл на странный канал: ребята пьют крафтовое илитное певко и обсуждают Big Data технологии. Как же я сам до такого не додумался…

Журналируемые файловые системы Linux

Хоть немного и старая, но всё же хорошая статья на доступном языке о журналировании в файловых системах. Журналируемые файловые системы обеспечивают надёжность и защиту от повреждения данных при крахе системы или потере питания. Время восстановления в таких системах намного меньше, чем в традиционных файловых системах (например таких в которых применяется fsck). […]

Опубликовано
В рубрике Linux

Как в Laravel создать подключение к БД в runtime

Бывают ситуации, например, когда предопределённых в конфиге Laravel подключений к базам данных не достаточно и возникает потребность создавать подключения динамически во время выполнения PHP скрипта. Например, креденшиналы задаются как параметры консольной команды. Иногда это единственный способ проинтегрироваться с посторонним приложением. Далее рассмотрим один из способов решения подобных задач.

Запуск команд от имени системных пользователей

Когда требуется запустить команду или просто проверить права доступа от имени другого пользователя, можно воспользоваться примерно такой командой: su -c whoami nobody Для обычных пользователей это вернёт ожидаемый результат. Но, для системных пользователей, вроде nobody, apache и .т.д., результат будет таким: This account is currently not available.