PHP: Конкатенация
В веб-разработке программы постоянно оперируют строками. Все, что мы видим на сайтах, так или иначе представлено в виде текста. Этот текст чаще всего динамический, то есть полученный из разных частей, которые соединяются вместе. Операция соединения строк в программировании называется конкатенацией.
Мы уже знаем о математической операции сложения. Такая программа:
<?php
print_r(5 + 3);
выведет на экран 8
— результат работы бинарного оператора +
с операндами 5
и 3
.
Можно «сложить» две строки. Такая программа:
<?php
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'); // => King's Landing
// Ставим пробел в правой части
print_r("King's" . ' Landing'); // => King's Landing
Пробел — такой же символ, как и другие, поэтому сколько пробелов поставить в строке — столько и получится:
<?php
print_r("King's " . ' Landing'); // => King's Landing
print_r("King's " . ' Landing'); // => King's Landing
Задание
Выведите на экран
Winter came for the House of Frey.
используя конкатенацию слов.
Определения
Конкатенация - операция соединения двух строк. Например,
print_r("King's " . ' Landing');