[!] Deployer по-русски. Справочник -- Как с ним работать. PHP загрузка проекта на сервер с возможностью отката изменений

Что такое Deployer

  • Deployer -- это крутой инструмент для загрузки вашего кода на боевой/тестовый и вообще любой удалённый сервер ;)
  • И на этой странице мы собираем разные примеры и приёмы работы с ним)

Установка

Выполняем три команды (копируйте их как одну) для установки последней версии:

sudo curl -LO https://deployer.org/deployer.phar && \
sudo mv deployer.phar /usr/local/bin/dep && \
sudo chmod +x /usr/local/bin/dep

git branch Определить текущую ветку -- вывести название текущей ветки

Чтобы определить ветку, на которую "смотрит" ваш локальный репозиторий, выполните команду:

git branch

git push Отправить изменения на сервер (в удалённый внешний репозиторий)

Чтобы отправить изменения текущей ветки на сервер закоммитьте их и затем выполните команду (для удалённого репозитория по умолчанию -- основного):

git push

git merge Объединение веток -- Влить в одну ветку другую (слияние, объединение изменений мердж - как это делать)

Перейдите (переключитесь) в ветку, в которую будете вливать другую, пусть имя другой ветки, скажем, branchch, тогда влить её в текущую (в ту, на которую вы перелючились можно так):

git merge branchch

Пример

А если описывать процесс (пусть ветка на которую надо переключится, а потом влить в неё изменения из branchch, называется, скажем, mybr), тогда делаем так:

php Два знака вопроса что это ?? -- Null-коалесцентный оператор

Два знака вопроса, идущие подряд без пробела (впервые появились появились в php7) -- это не что иное как:

Null-коалесцентный оператор

Решает распространенную проблему в PHP.
Она возникает в случае, если мы хотим присвоить значение переменной, которое присвоено другой переменной, но если последней переменной значение не было присвоено (isset), то присвоить некое явное значение по умолчанию.

Часто проявляется при работе с пользовательским вводом.

До PHP 7:

mongodb $lookup -- Что это в агрегации

Оператор $lookup

Позволяет выполнить left outer join данной коллекции с коллекцией к которой не применён шардинг и находящейся в той же базе (то есть то, что в простых проектах обычно и имеется).

Формат:

{
   $lookup:
     {
       from: <collection to join>,
       localField: <field from the input documents>,
       foreignField: <field from the documents of the "from" collection>,
       as: <output array field>
     }
}

Например (кусок из php кода):

mongodb $project Что это в агрегации

Оператор $project

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

php Почему не работает редирект Warning: Cannot modify header information - headers already sent by... Ошибка Решение

[продолжение этого вопроса]

Описание частной проблемы

После нажатия на кнопку выводится ошибка:

Warning: Cannot modify header information
 - headers already sent by (output started at C:\OpenServer\domains\testsite\WEB\5_phpRedirect.php:10)
 in C:\OpenServer\domains\testsite\WEB\5_phpRedirect.php on line 12

Код аналогичен приведённому в данной теме:

Internet Explorer. Не определяется тип браузера

Пример взят из книги С.Хольцнера "PHP в примерах" (стр.183-185) в рамках учебного курса PHP с нуля.
С помощью переменной

$_SERVER ["HTTP_USER_AGENT"]

не распознаётся Internet Explorer. Всегда выводится сообщение: "Вы используете НЕ IntExplorer". В чём ошибка?

HTML-форма:

Pages

Subscribe to fkn+antitotal RSS