MySQL історія запитів. Структурована мова запитів SQL у PHPMyAdmin. Збереження параметрів пошуку

27.10.2019 Програми

Зустрічаються випадки, коли змінні досить незручно використовуватиме постійного зберігання якихось певних значень, які змінюються протягом роботи програми. Такими значеннями можуть бути математичні константи, шляхи до файлів, різноманітні паролі тощо. Саме для цих цілей у PHP передбачена така конструкція, як.

називається іменована величина, яка не змінюється у процесі виконання програми (скрипта).

У РНР константи визначаються функцією define(). Ця функція має такий формат:

define ($name, $value, $case_sen), де:

$name- Ім'я константи;
$value- Значення константи;
$case_sen- необов'язковий параметр логічного типу,
вказує, чи слід враховувати регістр літер (true) чи ні (false).

Приклад визначення та використання констант у PHP:


echo pi;
// Виводить 3.14
?>

Якщо параметр $case_senдорівнює true, то інтерпретатор враховуватиме регістр символів під час роботи з константою. Зверніть увагу, що константи використовуються без попереднього знаку $ .

Відмінності між константами та змінними:

    Констант не має приставки у вигляді знака долара ( $ );

    Константи можна визначити лише за допомогою функції define(), а чи не привласненням значення;

    Константи можуть бути визначені та доступні в будь-якому місці без урахування області видимості;

    Константи не можуть бути визначені або анульовані після початкового оголошення;

    Константи можуть мати лише скалярні значення.

Перевірка існування констант

Для перевірки константи можна використовувати функцію defined() . Ця функціяповертає true, якщо константу оголошено. Наведемо приклад:

// Оголошуємо константу pi
define ("pi", 3.14, true);
if (defined ("pi")== true ) echo "Константа pi оголошена!";
// Скрипт виведе "Константа pi оголошена!"
?>

Зумовлені константи PHP

У PHP існують такі визначені константи:

PHP надає великий список зумовлених констант для кожного скрипта, що виконується. Багато з цих констант визначаються різними модулями і будуть присутні лише в тому випадку, якщо ці модулі доступні в результаті динамічного завантаження або статичного складання.

Є п'ять зумовлених констант, які змінюють значення залежно від контексту, в якому вони використовуються. Наприклад, константа __LINE__залежить від рядка в скрипті, де ця константа вказана. Спеціальні константи нечутливі до регістру та їх список наведений нижче:

Ім'я Опис
__LINE__ Поточний рядоку файлі.
__FILE__ Повний шлях та ім'я поточного файлу.
__DIR__ Повідомлення про файл. Якщо вона включена в включені, то в directory of the included file is returned. Це є equivalent to dirname(__FILE__). Це directory name does не має trailing slash unless it is root directory.
__FUNCTION__ Ім'я функції. (Додано в PHP 4.3.0.)
__CLASS__ Назва класу. (Додано в PHP 4.3.0.)
__TRAIT__ Trait name. Trait name включатиме namespace it був declarated in (e.g. Foo \ Bar).
__METHOD__ Ім'я методу класу. (Додано в PHP 5.0.0)
__NAMESPACE__ Назва поточного namespace.

Додатково

» Константи у PHP?

Навігація за Самовчителем: 1.1 Про PHP 1.2 Історія PHP 1.3 Чому саме PHP? 1.4 Як все це (PHP) працює? 1.5 Від інтерпретатора до компілятора 1.6 Можливості PHP 1.7 Що потрібно для роботи? 1.8 Відповіді на ваші запитання 1.9 Висновок до розділу 2.1 Встановлення та конфігурування 2.2 Встановлення Apache 2.3 Встановлення PHP 2.4 Установка MySQL 2.5 Налаштування Apache 2.6 Налаштування PHP 2.7 Налаштування MySQL 2.8 Тестування програм Apache, PHP 2.9 Висновок до розділу 2 3.1 Синтаксис мови PHP 3.2 Професійна вставка 3.3 РНР і HTML 3.4 Коментарі в мові P3. 3 4.1 Змінні. Що таке змінні? 4.2 Змінні. Типи даних у PHP 4.3 Integer. Тип даних. 4.4 Double. Тип даних. 4.5 Boolean. Тип даних. 4.6 Інші типи даних 4.7 Визначення змінних у PHP 4.8 Зміна типу даних у PHP 4.9 Посилання на змінні у PHP 4.10 Динамічні змінні у PHP 4.11 Що таке Константи у PHP? 4.12 Визначення констант у мові PHP 4.13 Зумовлені константи у мові PHP 4.14 Висновок до глави 4 5.1 Оператори в PHP 5.2 Оператор присвоєння в PHP 5.3 Арифметичні оператори в PHP 5.4 Оператори відносини в PHP 5.5 Логічні оператори. оператори в PHP 5.8 Оператор придушення помилок у PHP 5.9 Оператори збільшення та зменшення у PHP 5.10 Скорочений запис присвоєння змінних у PHP 5.11 Пріоритетність та асоціативність у PHP 5.12 Висновок до розділу 5 6.1 Управляючі оператори PHP 6.2 У. witch 6.5 Оператори циклу For 6.6 Оператор циклу While 6.7 Оператор циклу Do...while 6.8 Безумовний оператор Break 6.9 Безумовний оператор Continue 6.10 Безумовний оператор Exit 6.11 Require 6.12 Include 6.13 Висновок до розділу 6 7.1 Функції в PHP 7.2 Визначення функцій у PHP 7.3 Аргументи функцій у PHP 7.4 Область видимості змінних 7.5 Час життя змінних у PHP 7.6 Рекурсія в PHP 7.6 Рекурсія в PHP 7.6 Рекурсія в PHP 7.6 .1 Масиви в PHP 8.2 Присвоєння значень масивів PHP 8.3 Функція array () PHP 8.4 Виведення PHP масивів 8.5 Обхід масивів PHP. Функція count(), Конструкції foreach() 8.6 Функція reset() 8.7 each() 8.8 list() 8.9 Додавання масивів 8.10 Порівняння масивів 8.11 Додавання елементів масиву 8.12 Видалення елементів масиву 8.13 Сортування масив4 Багатовимірні масиви 8.15 Перетворення в масив 8.16 Висновок до розділу 8 9.1 Рядок 9.2 Обробка змінних усередині рядків 9.3 Виведення рядків 9.4 Форматований виведення рядків 9.5 Довжина рядка в PHP 9.6 Пошук підрядки у рядку 9.7 Чищення рядків 9.8 Висновок до розділу 1. Висновок-розділ. HTML-форми. Метод GET і POST 10.3 Отримання даних у PHP 10.4 Суперглобальні масиви $_GЕТ і $_POST 10.5 Висновок до розділу 10 11.1 Відкриття файлів у PHP 11.2 Закриття файлів у PHP 11.3 Читання та запис файлів у PHP 11.4 Копіювання, запис файлів у PHP 11.4. інформації про файли у PHP 11.6 Файловий покажчик у PHP 11.7 Відкриття та закриття каталогів у PHP 11.8 Читання каталогів у PHP 11.9 Створення та видалення каталогів у PHP 11.10 Висновок до розділу 11 12.1 Робота з базами даних MySQL у PHP 12. 12.3 Створення та видалення бази даних MySQL 12.4 Створення та видалення таблиць MySQL 12.5 Робота з даними MySQL 12.6 Висновок до розділу 12 13.1 Робота із зображеннями у PHP. Бібліотека GD 13.2 Створення та виведення зображень у PHP 13.3 Модифікація зображень у PHP 13.4 Робота з текстом у PHP 13.5 Висновок до розділу 13 14.1 Робота з датою та часом у PHP 14.2 Символи форматування дати та часу в Pte da в PHP 14.4 Перетворення до абсолютного часу в PHP 14.5 Висновок до розділу 14 15.1 Робота з регулярними виразами в PHP 15.2 Регулярні вирази POSIX в PHP 15.3 Метасимволи в PHP 15.4 Класи символів 15.5 Квантифікатори 7. регулярних виразів 15.8 Висновок до розділу 15 16.1 Робота з Cookies у PHP 16.2 Створення Cookies у PHP 16.3 Читання з Cookies 16.4 Видалення Cookies 16.5 Висновок до розділу 16

Вживаючи у повсякденному житті слово «константа», ми маємо на увазі постійне значення. Це може бути число Пі (3,14) чи температура кипіння води (100 °С). У РНР також є можливість використовувати константи. Сенс їх застосування полягає в тому, що, позначивши певне значення, ми можемо використовувати його протягом усього коду програми.

(!) Константа – це незмінне значення.

Наприклад, ваш друг Василь Пупкін створив Web-сайт і хоче, щоб усі знали ім'я адміністратора. При цьому він знаходить найпростіше і, здавалося б, правильне рішення (листинг 4.19).

Лістинг 4.19. Виведення прізвища та імені адміністратора Web-сайту.

‹?php
echo "Адміністратор сайту: Пупкін Василь"; // Висновок повідомлення
?›

Відповідно, треба змінити ім'я адміністратора. Швидше за все, ви шукатимете по всіх сторінках сайту текст, що містить рядок Пупкін Василь. Після знаходження треба розібратися, міняти її на ваше ім'я чи ні. Не важко помітити, що рішення, здавалося б, простий завдання займає багато часу і гарантує коректну роботу програми. Всі ці проблеми можна було б уникнути, якби Василь застосував константу для позначення свого імені. Для цього треба вибрати ім'я константи (зазвичай його називають ідентифікатором), наприклад, ADMIN_NAME, після чого визначити її значення (у нашому випадку Пупкін Василь).

Тепер розв'язання задачі виглядатиме так, як показано у лістингу 4.20.

Лістинг 4.20. Приклад використання констант.

‹html›
‹head›
‹title›Приклад використання констант‹/title›
‹/head›
‹body›
‹?php
define("ADMIN_NAME", "Пупкін Василь"); // Визначення константи
echo "Адміністратор сайту:"; // Висновок повідомлення
echo ADMIN_NAME; // Висновок значення константи
?›
‹/body›
‹/html›

У цьому випадку ідентифікатор ADMIN_NAME буде замінено значенням Пупкін Василь. Щоб змінити ім'я адміністратора Web-сайта, потрібно лише коригування рядки з визначенням константи. Розглянемо цю тему докладніше.

PHP має набір спеціальних зумовлених констант і магічних методів для ваших проектів. На відміну від звичайних констант, які можна встановлювати за допомогою define() , значення зумовлених констант залежить від того, де вони використовуються, і є інформацією лише для читання про код та PHP систему. Магічні методи можна використовувати у класах для отримання доступу до спеціального функціоналу PHP.

У цьому уроці ми розглянемо кілька корисних зумовлених констант та магічних методів з прикладами використання у коді.

Зумовлені константи

Обумовлені константи використовуються для отримання інформації про ваш код. Ім'я такої константи пишеться великими літерамиміж здвоєними підкресленнями, наприклад, __LINE__ та __FILE__ . Ось кілька корисних констант, доступних в PHP:

  • __LINE__ повертає номер рядка в вихідному файлі, де використовується константа:

  • __FILE__ представляє ім'я файлу, включаючи повний шлях:

  • __DIR__ представляє тільки шлях до файлу:

  • __CLASS__ представляє ім'я поточного класу:

  • __FUNCTION__ представляє ім'я поточної функції:

  • __METHOD__ представляє ім'я поточного методу:

  • __NAMESPACE__ представляє ім'я поточного простору імен:

Магічні методи

Магічні методи являють собою гачки для спеціального функціоналу PHP. Їхні імена пишуться маленькими літерами з двома попередніми підкресленнями, наприклад, __construct() та __destruct() .

Construct() - магічний метод, який PHP викликає створення екземпляра вашого класу. Він приймає будь-яку кількість аргументів.

Destruct()- магічний метод, який викликається, коли об'єкт знищується колектором PHP. Цей метод не приймає аргументів і зазвичай використовується для виконання спеціальних операцій, наприклад, закриття з'єднання з базою даних.

Наступні кілька магічних методів призначені для маніпуляцій з властивостями, і представляють спосіб PHP обробити звернення до властивостей та методів, які не були визначені (або недоступні).

PHP викликає метод __get() в контексті, якщо властивість не визначена (або недоступна). Метод приймає один аргумент – ім'я властивості. Він повинен повернути значення, яке оброблятиметься як значення властивості.

Метод __set() викликається для невизначеної властивості в контексті, що задає. Даний метод приймає два аргументи, ім'я властивості та значення.

myAarray[$prop] = $value; ) public function __get($prop) ( return $this->myArray[$prop]; ) public function __isset($prop) ( return isset($this->myArray[$prop]); ) public function __unset($prop) ) ( unset($this->myArray[$prop]); ) public function __toString() ( return __CLASS__ . ":" . $this->name; ) ) $obj = new MySample(); if (!isset($obj->name)) ( $obj->name = "Alireza"; ) echo $obj->name; // Alireza echo $ obj; // MySample:Alireza

У наведеному вище коді властивість name не визначено в класі. У коді робиться спроба призначити цій властивості значення "Alireza" і PHP викликає магічний метод __set() . Він отримує “name” як аргумент $prop і “Alireza” як $value , і зберігає значення приватному масиві $myArray . Метод __get() працює у подібній манері. При виведенні $obj->name викликається метод __get() і передається значення “name” як аргумент $prop .

Є й інші магічні методи, які допомагають маніпулювати недоступними властивостями, як у прикладі: __isset() , __unset() і __toString() . Обидва методи __isset() і __unset() запускаються функціями з такими ж іменами, але без підкреслень у PHP.

Isset() перевіряє, чи встановлено властивість чи ні. Цей метод приймає один аргумент - властивість, яку треба перевірити. Метод __unset() приймає один аргумент, ім'я якості, яку потрібно скинути.

У багатьох випадках зручне уявлення об'єкта як рядка, наприклад, для виведення користувачеві або іншого процесу. Зазвичай PHP представляє об'єкт як ідентифікатор у пам'яті, що є поганим для таких функцій. Метод __toString() допомагає уявити об'єкт як рядок. Метод запускається у багатьох ситуаціях, де об'єкт використовується як рядок, наприклад echo "Hello $obj" . Також його можна викликати безпосередньо як будь-який інший публічний метод.

Константи- Це значення, які не змінюються з часом. Ще зі школи Ви, напевно, знаєте багато константів, наприклад, число п, число e, прискорення вільного падіння та інші. І, зрозуміло, при програмуванні теж часто виникає необхідність введення констант. І про те, як створювати та використовувати константи в PHP, ми й поговоримо у цій статті.

Давайте з Вами створимо константучисла п:

define(PI, 3.1415926);
echo PI;
?>

Оператор defineстворює константу PIі надає їй значення 3.1415926 . Далі ми виводимо цю константу через оператор echo. Все дуже просто, однак, є одна рекомендація, яку я раджу Вам завжди дотримуватись. Обов'язково пишіть константивеликими літерами. Не те щоб це було обов'язково, але вкрай бажано. І так прийнято не тільки в PHP, але й інших мовах теж.

Зрозуміло, згодом змінити константу PI буде не можна (на те вона і константа).

Тепер розберемо одну функцію, яка перевіряє: " Чи визначено задану константу". Давайте напишемо такий скрипт:

if (!defined("PI")) define(PI, 3.1415926);
echo PI;
?>

Тут перевіряється існування константи PI. І якщо вона не існує (тобто функція define()повернула false), то тоді ініціалізуємо цю константу. Потім просто виводимо її.

Як бачите, створювати та використовувати свої константи у PHP- це дуже просто.

І, насамкінець, хочеться розповісти про вже вбудованих константах PHP . Давайте з Вами напишемо простий скрипт:

phpinfo();
?>

Ближче до кінця є розділ " PHP Variable". Власне, це не зовсім константи, однак, вони є константамипід час виконання даного скрипта. Зрозуміло, під час виконання іншого скрипту вони вже матимуть інші значення (не все, зрозуміло). Давайте з Вами виведемо пару констант, щоб Ви зрозуміли, як з ними працювати, адже вони використовуються дуже часто:

echo $_SERVER["REMOTE_ADDR"];
echo "
";
echo $_SERVER["QUERY_STRING"];
?>

У цьому скрипті ми виводимо IP-адреса користувача, що запустив скрипт, а на наступному рядку виводимо рядок запиту (наприклад, " index.php?id=7Забігаючи трохи вперед, кажу, що тут ми працюємо з глобальним масивом $_SERVER. З масивами ми ще познайомимося, але думаю, що ті, хто працював з масивами в інших мовах програмування, без проблем дізнаються синтаксис. Що ж до інших констант, то з ними робота відбувається аналогічно.