Змінні Змінна — об'єкт, що має ім'я та значення. Знаючи ім'я, ми можемо користуватись значеннями, що має змінна. Змінні в PHP починаються зі знака долара. Імена чутливі до регістру і мають починатися з букви чи нижнього підкреслення. Можуть писатися як латиницею, так і кирилицею. Значення змінних може бути отримане в такий спосіб: самостійне визначення (оголошення); як результат виконання функцій/операцій; отримано через запит браузера методом Get або Post. // Самостійно оголошуємо змінні $кількість_користувачів = 100; $user = 'Петрик П’яточкін'; // Значення змінної є результатом операції $new_user= $кількість_користувачів+1; echo "Вітаємо вас, $user! Ви - $new_user користувач!"; // Вітаємо вас, Петрик П’яточкін! Ви - 101 користувач!

Екранування змінних Для екранування змінних в PHP використовуються фігурні дужки. Приклад: $користувач = 'Петрик'; echo "Бувай, {$користувач}у!"; // Виведе: Бувай, Петрику! echo "Бувай, ${користувач}у!"; // Аналогічний результат.

Доступ до символу в рядку Виведення окремих символiв рядка теж робиться за допомогою фігурних дужок. $name = 'Hypertext Preprocessor'; echo $name{0}; // Виведе: H, адже відлік починається з нуля. echo $name{10}; // Виведе: P В цих дужках виконуються операції і функції. Приклади: echo $name_last = $name{strlen($name)-1}; // Виведення останнього символу $name{strlen($name)-1} = "R"; // Заміна останнього символу echo $name; // Hypertext PreprocessoR Але зверніть увагу, що довжину рядка цією функцією PHP рахує в байтах, а не в символах (як наприклад, в JavaScript). А одна літера кирилиці в такому випадку є займає 2 байта.

Константи Як випливає з назви, константи - це змінні, значення яких задається один раз і не може зміниться в ході виконання скрипта. Задаються функцією define, а їх імена завжди пишуться у верхньому регістрі.

Приклад: define ("КОНСТАНТА", "ЗНАЧЕННЯ")

Оператори Оператори виводу echo є мовною конструкцією, а не функцією, тому вираз, що передається, не треба брати в дужки. Кількість аргументів необмежена. Зауважте, що echo не повертає жодного значення при виконанні, тобто її неможливо присвоїти змінній. echo $користувач; echo ($користувач,", привіт!"); // не можна передавати вирази, як в функцію. це викличе помилку.

Аналогом є print — теж мовна конструкція, але її відмінність в тому, що вона завжди повертає значення 1, завдяки чому цей оператор можна присвоювати змінним (але чи треба?). $a = 50; $n = print $a; //змінна $n має значення 501 (де 50 - це значення $a, 1 - результат оператору print) echo $n+20 ; // Результат: 5021 (додавання відбулось саме до результату від print) //А це викличе помилку типу Parse error $b = echo $n+20; Короткий запис echo, якщо включений short_open_tag: Вітаємо вас, <?=$користувач?>!

Зауважте, що кожна операція з використанням оператора echo є приведенням значень до рядка. Тому виведення булевого true буде 1, а false не виведе нічого. $n = true; echo $n + 10; // 11 $n = false; echo $n - 5; // -5

Оператори присвоєння

Рядкові оператори Конкатенація, тобто об'єднання рядків в PHP відбувається за допомогою крапки ('.'). Також, може приєднувати правий аргумент до лівого з оператором присвоєння. $користувач = "Петрик"; $вітання = ", привіт!"; echo $користувач.$вітання; // Петрик, привіт! //Присвоєння з конкатенацією $користувач .= ", привіт!"; // Змінна містить значення "Петрик, привіт!"

Арифметичні оператори

Приведення рядка до числа Виконання арифметичних дій зі змінними, типом даних в яких є рядок, проводиться за качиною типізацією. Так як PHP читає код зліва направо, він ідентифікує числом перші цифри, що знайде в рядку, інше відкине та викличе помилку типу Notice. $фрукт= "1 яблуко"; echo $фрукт+5; Результат Notice: A non well formed numeric value encountered in ... on line ... 6 Бітова логіка ~ - побітове "не" & - побітове "і" | - побітове "або"