Еще в ноябре 2005 года на встрече в Париже разработчики обсудили новые возможности следующей, шестой, версии PHP. Интересует ли Вас, какой будет эта версия? Примите участие в опросе, который проводится на сайте рассылки.
[опрос на английском языке: PHP 6: Are you interesting in? (PHP 6: Вы зантересованы?) - YES (ДА) - NO (НЕТ)]
Строковый тип
Аннотация
Строки символов: длина, синтаксис и специальные символы.
Строка представляет собой последовательность символов. В PHP размер памяти, занимаемый одним символом, равен одному байту, или восьми битам. Следовательно, всего имеется 256 (28) различных символов. Это значит, в частности, что PHP напрямую не поддерживает стандарт Unicode (хотя опосредованная поддержка все же существует). Что касается длины самой строки (количества символов в последовательности), то она, практически,
ничем не ограничена.
Есть три способа обозначить строку: одинарные кавычки (''), двойные кавычки ("") и специальный heredoc синтаксис (<<<).
Одинарные кавычки. Наиболее простой способ обозначения строк. Такие строки интерпретируются буквально; специальные символы и переменные не распознаются (см. ниже). Строки могут содержать в себе двойные кавычки. При необходимости вывести внутри строки одинарную кавычку (как часть самой строки, а не ее ограничитель) следует предварять такую кавычку обратным слэшем (\'). Если нужно вывести символ обратного слэша, то его удваивают (строго говоря, єто необходимо
только тогда, когда этот символ предшествует одинарной кавычке в середине или конце строки).
Двойные кавычки. Строки, ограниченные двойными кавычками, обладают способностью распознавать и заменять некоторые специальные символы (Приложение A, Специальные символы). О еще более важной возможности таких строк - распространении переменной (замене ее имени значением) - подробнее поговорим отдельно.
$var = "\101\x65"; // AA
print "\$var = $var";
$var = AA
Специальный heredoc синтаксис. Этот вариант используется обычно для вывода больших фрагментов текста. По своим возможностям распознавать специальные символы и распространять переменные он напоминает предыдущий (с двойными кавычками), но использует другой ограничитель: <<< с последующей символьной меткой, которая затем повторяется в конце строки. Метка может состоять из буквенно-цифровых символов
и знака подчеркивания (но не может начинаться с цифры); закрывающая метка обязательно должна начинаться с первой позиции в строке. Это позволяет использовать двойные кавычки внутри строки, заданной таким способом (удобно при большом количестве двойных кавычек, так как не требует предварения их обратным слэшем, что значительно улучшает воспринимаемость кода).