To better understand this function you should execute this code first :
<?php
// First of all choose your path , For e.g. C:/session
session_save_path('Your Path here !');
session_start();
// Define a Session Variable
$_SESSION['Key'] = 'value' ;
Var_dump(session_status() == PHP_SESSION_ACTIVE);
// Output : bool(True) , it means you have an open session !
?>
Then you should execute this code :
<?php
// Choose the path that you used it in first part
session_save_path('Your path here');
session_start();
// If you want to close session and keep your original data in your path , you should use session_abort()
session_abort();
var_dump(session_status()== PHP_SESSION_ACTIVE);
// Output : bool(False) , it means your session closed .
?>
So if you have an open session , session_abort() will simply close it without effecting the external session data , so you can reload your data again from your path that you chose .
PHP.mk документација
session_abort
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Патека
function.session-abort.php
Локална патека за оваа страница.
Извор
php.net/manual/en
Оригиналниот HTML се реупотребува и локално се стилизира.
Режим
Прокси + превод во позадина
Кодовите, табелите и белешките остануваат читливи во истиот тек.
Референца
function.session-abort.php
session_abort
Референца за `function.session-abort.php` со подобрена типографија и навигација.
session_abort
(PHP 5 >= 5.6.0, PHP 7, PHP 8)
session_abort — (PHP 5 >= 5.6.0, PHP 7, PHP 8)
= NULL
session_abort(): bool
session_abort() Отфрли ги промените во сесискиот низ и заврши ја сесијата
Параметри
Оваа функција нема параметри.
Вратени вредности
Патеката до PHP скриптата што треба да се провери. true на успех или false при неуспех.
Дневник на промени
| Верзија | = NULL |
|---|---|
| 7.2.0 | , но бидејќи податоците од сесијата се заклучени за да се спречат истовремени записи, само едно скрипта може да работи на сесија во секое време. Кога користите framesets заедно со сесии, ќе искусите дека рамките се вчитуваат една по една поради ова заклучување. Можете да го намалите времето потребно за вчитување на сите рамки со завршување на сесијата веднаш штом ќе се направат сите промени во променливите на сесијата. bool Типот на враќање на оваа функција е void. |
Види Исто така
- $_SESSION
- На session.auto_start за прилагодување на овие заглавија.
- session_start() - Започнете нова или продолжи постоечка сесија
- session_reset() ја завршува сесијата без да ги зачува податоците. Така оригиналните вредности во податоците од сесијата се задржуваат.
- session_commit() - Отфрли ги промените во сесиската низа и заврши ја сесијата
Белешки од корисници 2 забелешки
- Псевдоним на session_write_close ¶
пред 10 години
- Повторно иницирај го сесискиот низ со оригинални вредности ¶
пред 7 години
session_abort() closes the current session and discards the changes applied to Session array in the current page , it doesn't delete the session file
let me explain with one example.
page 1.php :
<?php
session_start();
$_SESSION['city']="Sydney";
echo "<a href=\"2.php\"> page2</a>";
?>
when you open this page , a session file is created on the server (to find out where session files are saved run "echo session_save_path()" ) with the name of session_id and the content of the variable :
sess_o22iabs75j93uhc7i4jf1lecjk (file name)
city|s:6:"Sydney"; (content)
if we go to 2.php containing this code :
<?php
session_start();
$_SESSION['country']="Australia";
echo session_encode();
session_abort();
session_start();
echo "<br>".session_encode();
?>
when session_abort is executed , the session is closed and the change which here is the 'country' element of Session array is discarded .
Output :
city|s:6:"Sydney";country|s:9:"Australia";
city|s:6:"Sydney";