• доступно о веб-разработке
06.11.2012 PHP, Технологии

Строки / Неделя PHP

Работа с информацией всегда требует системного подхода. Поработав хотя бы немного на PHP, вы уже автоматически начинаете понимать, какие типы данных для чего нужны. Строчный тип данных используется повсеместно практически во всех языках программирования. Говоря простым языком, строка — это переменная, хранящая в себе текст.

Как интерпретатор PHP узнает, что вы инициализируете строку? По кавычкам. Любой текст берется в кавычки.

$slogan = «Быстро и просто!»;

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

В программировании на PHP для обозначения текста используются два типа кавычек — одиночные и двойные.

В чем же между ними различие? Дело в том, что двойные кавычки позволяют использовать переменные прямо в тексте.

Пример:

<?php

$a = 12;

$string_double_quotes = "Их было всего лишь $a, но были они Лениградцы!";

echo $string_double_quotes;

// выведет
// Их было всего лишь 12, но были они Лениградцы!

$string_single_quotes = 'Их было всего лишь $a, но были они Ленинграды!';

echo $string_single_quotes;

// выведет
// Их было всего лишь $a, но были они Лениградцы!

Как видите, внутри одиночных кавычек переменные не обрабатываются. Что же делать тогда?

Использовать метод соединения строк — конкатенация.

Любую строку можно разбить на несколько при помощи точки «.».

К примеру, вот так:

<?php

echo 'Первая часть строки и'.' вторая часть строки';

// Тоже верно и для двойных кавычек

echo "Первая часть строки и"." вторая часть строки";

// Можно между частями строки вставить переменную

$a = 12;

echo 'Их было всего лишь '.$a.', но были они Ленинградцы!';

// выведет:
// Их было всего лишь 12, но были они Ленинградцы!

Как видите, вы можете отправлять строки на вывод (при помощи функции echo) без предварительного размещения их в переменных.

При этом вы можете соединять строки с переменными, чтобы на выходе получилась одна строка.

То есть сначала исполняет операция конкатенации, а после получившаяся строка выводит на экран при помощи команды echo.

Как же тогда поступить, если в самом тексте есть кавычки?

Применить метод, который называется «экранирование».

Суть его заключается в том, что перед кавычкой в тексте ставится обратная косая черта.

<?php

echo "Если скажет рать святая: \"Кинь ты Русь, живи в раю!\", я скажу: \"Не надо рая! Дайте Родину мою!\"";

echo 'Если скажет рать святая: "Кинь ты Русь, живи в раю!", я скажу: "Не надо рая! Дайте Родину мою!"';

Обратите внимание, что экранированию подлежат только кавычки одного и того же типа!

Если вы объединяете строку с переменной другого типа, то происходит операция, которая называется «приведение типов переменных».

<?php

$tooth = 33;

echo 'У меня '.$tooth. ' зуба.';

// Выведет «У меня 33 зуба.»

По сути вы не видите здесь чудес, но переменная была типа integer (целое число), а при конкатенации стала типа string (строка).

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

В процессе работы мы будем постоянно иметь дело со строками и даже с массивами строк.

Но о массивах мы поговорим с вами завтра.

 

Поделиться

Комментарии Правила дискуссии