Вступ на сесії PHP

Сесії використовуються у веб-додатках. Використання сеансу в PHP полягає в тому, щоб зробити доступними дані на різних сторінках веб-сайту. Дані або інформація, наприклад, ім'я, адреса тощо, переносяться з однієї сторінки на іншу сесію користувача. Ця інформація про сеанс використовується для цілей аутентифікації. Так як файли cookie зберігаються у браузері клієнтів, дані сеансу зберігаються на сервері у тимчасовій директорії.

Для початку сеансу ми використовуємо функцію session_start (). А коли сеанс розпочнеться, він за замовчуванням триває 24 хвилини, що становить 1440 секунд. Сеанс визначається за допомогою ідентифікаторів сеансу або SID, що є унікальним номером для ідентифікації кожного користувача.

Як створити сесії?

session_start () - функція, яка використовується для запуску сеансу. Якщо сеанс вже існує, він буде використовувати той самий сеанс, інакше він створить новий сеанс. Ця функція завжди викликається на початку кожної сторінки. Після виклику функції ми можемо почати зберігати значення в змінних сеансу, але не раніше цього. PHP зберігає інформацію користувача у супер глобальній змінній $ _SESSION.

Щоб знати, яким є шлях до каталогу, де зберігаються сесії, у файлі php.ini є директива під назвою session_save_path для зберігання шляху. Також session_id друкує ідентифікатор, пов'язаний з поточним сеансом. Це унікальне випадково генероване число.

Давайте розглянемо програму нижче.

У цій програмі під час друку цієї змінної сеансу за допомогою print_r ($ _ SESSION) друкуються всі встановлені дані сеансу. Вихід складається у вигляді асоціативного масиву пар ключ-значення.

У цьому прикладі ми спочатку запускаємо сеанс за допомогою функції session_start (), ініціалізуємо змінні та призначаємо її змінним сеансу за допомогою _SESSION ('name') = $ name, друкуємо супер глобальний масив. Також ми друкуємо унікальне значення ідентифікатора сеансу також за допомогою функції session_id ().

Приклад №1

Код:

<_?php
// example to start session
//beginning a session
// no arguments are passed to this function
session_start();
//initializing variables
$name = 'Neha';$age = 28;
//storing values in session
$_SESSION('name') = $name;
$_SESSION('age') = $age;
// printing session valuesprint_r($_SESSION);
//using the session id
echo '
The session_id is ';
echo session_id();
?>

Вихід:

Як видалити сеанси?

Приклад №2

Функція Session_destroy () використовується для знищення сеансу. Ця функція знищує повний сеанс. Для скидання однієї змінної сеансу ми можемо використовувати функцію unset ().

У цьому прикладі ми спочатку роздруковуємо дані сеансу, щоб дізнатись, у чому полягає сесія, і знищуємо вже встановлені змінні сеансу за допомогою функції unset (). Тут ми знищуємо обидва встановлені змінні сеансу, такі як ім'я та вік. І після знищення ми знову надруковуємо сеанс і бачимо, що він повертає порожній масив, тобто змінні було вимкнено, і сеанс вже не існує.

Код

<_?php
//example to unset session variables
//starting a session
session_start();
print_r($_SESSION);
//before destroying the session
//printing the session
unset($_SESSION('name'));
unset($_SESSION('age'));
echo 'Session destroyed';
//after destroying the session
//printing the session
print_r($_SESSION);
?>

Вихід:

У наступному прикладі ми знищуємо сеанс.

Щоб знищити сеанс, спочатку перевіримо значення сеансу, а потім знищимо сеанс. і знову надрукуйте сеанс, який буде порожнім масивом, оскільки сеансу не існує.

Приклад №3

Код:

<_?php
//example to destroy session
//starting a session
session_start();
//to completely destroy a session
session_destroy();
echo 'Session destroyed';
//after destroying the session
//printing the session
echo '
';
print_r($_SESSION);
?>

Вихід:

Тут, у програмі, ми бачимо, що в першому рядку ми починаємо сеанс і ініціалізуємо змінну count до 0. Далі ми перевіряємо, чи встановлена ​​змінна сеансу чи ні. тут ми перевіряємо одну умову, чи встановлено ім’я сторінки сесії page_views, якщо так, то збільшуємо значення змінної count на одне, а якщо ні, то ініціалізуємо значення підрахунку до одного.

Приклад №4

Код:

<_?php
session_start();
$count = 0;
if(!isset($_SESSION('page_views'))) (
$_SESSION('page_views') = 1;
$count = $_SESSION('page_views');
) else (
$_SESSION('page_views') = $_SESSION('page_views') + 1 ;
$count = $_SESSION('page_views');
)
?>
Finding count of page views
'. 'The count of page views '. $count;
?>
<_?php echo '
session_start();
$count = 0;
if(!isset($_SESSION('page_views'))) (
$_SESSION('page_views') = 1;
$count = $_SESSION('page_views');
) else (
$_SESSION('page_views') = $_SESSION('page_views') + 1 ;
$count = $_SESSION('page_views');
)
?>
Finding count of page views
'. 'The count of page views '. $count;
?>

Вихід:

Як увімкнути автоматичну сесію в Php?

Щоб увімкнути автоматичні сеанси в php, нам слід змінити файл конфігурації, який є php.ini.

Де php.ini - це конфігураційний файл за замовчуванням

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

Тож у файлі php.ini ми будемо шукати

session.auto_start = 0

і встановіть значення 1, як це

session.auto_start = 1

Це допоможе PHP автоматично починати сеанси.

Важливість сеансу

  • Як і $ _COOKIE, у нас є $ _SESSION, яка є надглобальною змінною і зберігається на сервері.
  • Якщо файли cookie не підтримуються браузером користувача, ми можемо використовувати сеанс. Кожен сеанс має унікальний ідентифікатор, призначений йому відповідно до відвідування користувача на веб-сайті.
  • Що стосується збереження даних, сеанс зберігає більше даних, ніж файл cookie.
  • Сеанс використовується для перенесення інформації з однієї сторінки на іншу.
  • Сеанс можна використовувати для отримання кількості відвідувачів веб-сайту.
  • Сеанс використовується і для цілей аутентифікації.
  • Створені ідентифікатори сесії унікальні.

Висновок

У цій статті пояснено, що таке сеанс, як працює сесія, як ми створюємо сеанс, як видалити певний сеанс.

Крім того, пояснюється, як зробити так, щоб сеанси працювали автоматично, встановивши значення директиви session.auto_start () на 1.

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

Рекомендовані статті

Це посібник із сеансів на PHP. Тут ми обговорюємо, як створити сеанси та видалити сеанси в PHP із наведеними прикладами. Ви також можете переглянути наступні статті, щоб дізнатися більше -

  1. Інкапсуляція в PHP
  2. PHP магічні константи
  3. Перевантаження в PHP
  4. Перевірка в PHP
  5. Конструктор в PHP
  6. Рекурсивна функція PHP
  7. Рекурсивна функція в Python
  8. Рекурсивна функція в С
  9. Рекурсивна функція в JavaScript
  10. Як файли cookie працюють у JavaScript із прикладом?