Page 21 - 4636
P. 21
У той самий час, якщо символи ++ слідують за змінною$а, отже, використовується операція
суфіксного инкремента. Вона дає інший результат. Розглянемо такі рядки:
$а = 4;
echo $а++;
У даній ситуації дії виконуються у зворотному порядку. Тобто, спочатку значення $а повертається і
виводиться на екран, і тільки після цього воно збільшується на 1. Результатом виконання цих двох
рядків буде 4. Саме це значення і буде виведено на екран. У той самий час, після виконання цього
оператора змінна $а набуває значення 5.
Операція - діє аналогічно, тільки в цьому випадку значення $а зменшується, а не збільшується на 1.
Операція посилання
Операція посилання, що позначається як & (амперсанд), може використовуватися в поєднанні з
операцією присвоювання. Зазвичай, коли значення однієї змінної присвоюється іншій змінній,
створюється копія першої змінної, яка зберігається десь у пам'яті. Наприклад:
$а = 5;
$b = $а;
Наведені рядки коду створюють другу копію значення змінної $а і зберігають її в змінній $b. Якщо
згодом значення $а піддасться зміні, значення $b залишиться колишнім:
$а = 7; // Значення $b залишається рівним 5
Створення копії можна уникнути, використовуючи операцію посилання &, наприклад:
$а = 5;
$Ь = &$а;
$а = 7; //
Тепер обидва значення $а $b дорівнюють 7.
Посилання вважають досить-таки важкими для розуміння. Посилання швидше подібне псевдоніму,
ніж на вказівник. І $а, і $b вказують на однy і ту ж ділянку пам'яті. Це можна змінити, скинувши одну
із змінних, наприклад:
unset($а);
Скидання не змінює значення змінної $b (рівне 7), але розриває зв'язок між змінною $а і значення
7, що зберігаються в пам'яті.
Операції порівняння
Операції порівняння виконують порівняння двох значень. Вирази, в яких наявні ці операції,
повертають залежно від результату порівняння логічні значення true (істина) або false (хибно).
Операція рівності
Операція рівності == (два знаки рівності) дозволяє перевірити рівність двох значень. Наприклад, ми
можемо скористатися виразом
$а == $b;
для перевірки рівності значень, що зберігаються в змінних $а $b. Результатом цього виразу буде
true, якщо вони рівні, або false, якщо вони не рівні.
Цю операцію легко сплутати з операцією присвоювання. Це не призведе до виведення
повідомлення про помилку, але загалом не дасть результату, на який ви, можливо, розраховували. У
загальному випадку будь-які ненульові значення інтерпретуються як true, а нульові - як false.
Припустимо, що дві змінних були ініціалізовані таким чином:
$а = 5;
$b = 7;
Якщо потім перевірити результат операції $а = $b, вийде значення true. Чому? Значенням виразу
$а = $b буде значення, присвоєне лівому операнду, яка в даному випадку дорівнює 7. Це ненульове
значення, тому вираз обчислюється як true. Якщо вашою метою була перевірка виразу $a == $b,
18