Відмінності між версіями «String (рядки)»
(Створена сторінка: Можливість однозначно ідентифікувати змінну дозволила розробникам PHP дати можливість п…) |
|||
Рядок 47: | Рядок 47: | ||
Перейти до [[Змінні та типи данних в PHP]] | Перейти до [[Змінні та типи данних в PHP]] | ||
+ | [[category:Інтернет-програмування|*]] | ||
− | [[category: | + | [[category:Навчальні проекти]] |
Поточна версія на 07:32, 25 травня 2010
Можливість однозначно ідентифікувати змінну дозволила розробникам PHP дати можливість програмістам використовувати змінні безпосередньо усередині рядків! Приклад подібного використання:
$name = "john";
$age = 23;
echo "$name is $age years old";
Як результат ми отримаємо рядок: John is 23 years old. Це дуже зручно. Проте необхідно звернути вашу увагу на одну деталь - в PHP, на відміну від багатьох інших мов, розрізняються рядки, взяті в одинарні і подвійні лапки. І подібне заміщення імен змінних їх значеннями виробляється лише в рядках, взятих в подвійні лапки! Дуже важливо завжди пам'ятати про це, щоб уникнути помилок. Рядки в подвійних лапках можуть містити і складніші вирази. Для цього необхідно вкласти їх у фігурні дужки:
$man = array("john",23);
echo "{$man[0]} is {$man[1]} years old";
Результат буде таким же, як і в попередньому прикладі. Ще однією цікавою особливістю роботи PHP з рядками є підтримка так званого способу here docs. Нижче наведений приклад:
<var="PHPist";
$text=<<HERE $var
HERE;
echo $text;
?>
В цьому випадку значенням змінної буде весь текст, що міститься між початковим і кінцевим маркерами (в даному випадку це рядок HERE, але цей маркер може бути будь-якою послідовністю символів). Ознакою того, що це here doc, є наявність << безпосередньо після знаку присвоєння. Даний механізм дуже зручний у випадку, якщо рядку необхідно присвоїти якийсь складний текст, особливо, якщо необхідно зберегти його форматування. До речі, в разі використання here docs ви також маєте можливість використання змінних усередині рядка як це було описано раніше.
Робота з рядками
Рядки ділять на два класи — рядки, що підлягають аналізу, та ті, що не підлягають. Перший клас досліджується інтерпретатором на наявність посилань на інші змінні, і за умови їхньої наявності робиться підстановка значень у відповідне місце. Крім того, клас дозволяє проводити маніпуляції з керівними символами. Символ рядка може мати лише одне з 256 значень, але є можливість працювати з багатобайтовими символами. Доступ до символів рядка можливий з використанням синтаксису, схожого на доступ до елементів масивів.
PHP надає широкий спектр функцій для пошуку та заміни тексту в рядках. Для цього використовують як традиційний підхід, так і спеціальний, що базується на використанні регулярних виразів. При цьому в мові реалізована підтримка двох видів регулярних виразів — Perl-сумісні та POSIX-сумісні, що розрізняються за синтаксисом та особливостями роботи.
Перейти до Змінні та типи данних в PHP