Конкатенация

Мы уже знаем о математической операции сложения. Такая программа:

print_r(5 + 3);

выведет на экран 8 — результат работы бинарного оператора + с операндами 5 и 3.

У строк есть свои операции. Можно «сложить» две строки. Такая программа:

print_r('Dragon' . 'stone');

выведет на экран Dragonstone — результат работы бинарного оператора . с операндами ‘Dragon’ и ‘stone’.

Эта операция называется конкатенацией. Грубо говоря, это «склеивание» строк. Склеивание всегда происходит в том же порядке, в котором записаны операнды, другими словами левый операнд, становится левой частью строки, а правый - правой.

Вот еще несколько примеров

<?php

print_r('Kings' . 'wood');     // => Kingswood

print_r('Kings' . "road");     // => Kingsroad

print_r("King's" . "Landing"); // => King'sLanding

Как видите, строки можно склеивать даже если они записаны с разными кавычками.

В последнем примере название города получилось с ошибкой: King’s Landing нужно писать через пробел! Но в наших начальных строках не было пробелов, а пробелы в самом коде слева и справа от символа . не имеют значения, потому что они не являются частью строк.

Попробуем решить эту проблему разными способами.

<?php

print_r("King's " . "Landing"); //  => Kings Landing

print_r("King's" . " Landing"); //  => Kings Landing

Пробел — такой же символ, как и другие, поэтому сколько пробелов поставить в строке — столько и получится:

<?php

print_r("King's " . " Landing");   // => Kings  Landing

print_r("King's  " . "  Landing"); // => Kings    Landing

Задание

Выведите на экран

Winter came for the House of Frey.

используя конкатенацию слов. Каждое слово должно быть представлено отдельной строкой. Не забудьте о пробелах.


Определения
  • Конкатенация — операция соединения двух строк. Например, print_r("King's " . " Landing");

Exercise available only for signed users