Інтерполяція змінних в php


Значення змінної може бути відображене наприклад так:

<?php
$capital = "Paris";

echo "The capital of France is", $capital,"<br />"; 
?>

Але є спосіб зробити це простіше. Якщо ім’я змінної поміщене в подвійні (не одинарні) лапки, то змінна інтерполюється. Наприклад:

<?php
$capital = "Paris";

echo "The capital of France is $capital <br />";
?>

Результат в браузері:

The capital of France is Paris

Також існує одна тонкість при використанні інтерполяції змінних. Наприклад:

<?php
$text = "news";

echo "Where's the $textpaper <br />";
 ?>

Очікується, що ім’я змінної $text буде замінено на її значення. Але в результаті буде виведена помилка. Щоб цього не траплялося, треба вказати, яку частину слова textpaper ми берем за ім’я змінної. Для цього треба узяти ту частину, яка нам потрібна, у фігурні дужки:

<?php
$text = "news";
echo "Where's the {$text}paper <br />";
?>

Змінні, що містять імена інших змінних

У PHP можливо розміщувати в значення змінних не лише звичайні значення, але і імена інших змінних.

<?php
$apples = 5; // Створюєм змінну $apples 
$fruit = "apples"; /* Створюєм змінну $fruit, яка містить ім'я змінної $apples */ 

// Зараз ми можемо вивести $apples, як $$fruit

echo "Кількість яблук - ", $$fruit;
?>

Для коректного відображення подібних змінних в строкових константах, поміщених в подвійні лапки, слід також використати фігурні дужки: ${$fruit}. Наприклад:

<?php
echo "Кількість яблук - ${$fruit}";
?>
Кількість яблук - 5