session_set_cookie_params(integer lifetime, string path, string domain, bool secure)
Функция session_set_cookie_params устанавливает четыре параметра, ис­пользуемых для файлов cookie данного сеанса. Обязательно задавать только параметр lifetime.
session_set_save_handler(string open, string close, string read, string write, string destroy, string garbage)
Функция session_set_save_handler позволяет реализовать альтернативный метод обработки сеансов. Каждый аргумент представляет собой имя функции для обработки определенного аспекта процесса обработки сеанса (табл. 8.5). Это можно реализовать в виде автономных функций или методов класса. Выбрав последнее, вы, как и автор в листинге 8.8, будете передавать имя метода в виде двухэлементных массивов. Первый элемент должен ссылаться на объект или класс. Второй элемент содержит имя метода. При использовании статических методов передайте это имя классу. При использовании объекта передайте в первом элементе ссылку на объект, как показано ниже. 
Браузер ввода-вывода
Листинг 8.8. Дескриптор сохранения сеанса

<?php
class mySession {
//префикс, которым обозначаются все файлы сеанса var $mark;
//путь к каталогу, в котором хранятся файлы сеанса var $path;
//имя файла cookie сеанса var $name;
function mySession($mark='mySession_')
{
$this->mark = $mark;
}
function getFilePath($id)
{
return($this->path . '/' . $this->mark . $id);
}
function open($path, $name)
{
$this->path = $path; $this->name = $name; return(TRUE);
}
function close()
{
return(TRUE);
}
function read($id) 
{
if($fp = @fopen(getFilePath($id), "r"))
{
return(fread($fp,
filesize($this->getFilePath($id))));
}
else
{
return("");
}
}
function write($id, $data)
{
if($fp = @fopen($this->getFilePath($id), "w"))
{
return(fwrite($fp, $data));
}
else
{
return(FALSE);
}
}
function destroy($id)
{
return(@unlink($this->getFilePath($id)));
}
function garbage($lifetime)
{
$d = dir($this->path); while($f = $d->read())
{
//файл начинается с отметки, что он устарел if((strpos($f, $this->mark) == 0) AND
(time() > (fileatime($f) + $lifetime)))
{
unlink("$this->path/$f");
}
}
$d->close(); return(TRUE);
}
}
$s = new mySession(); session_set_save_handler( array($s, 'open'), array($s, 'close'), array($s, 'read'), array($s, 'write'), array($s, 'destroy'), array($s, 'garbage')
);
// запуск сеанса session_start();
// инициализировать набор переменных сеанса if(!isset($_SESSION['a']))

print(" Инициализация сеанса <br>"); $_SESSION['a'] = 'Session Var A'; $_SESSION['b'] = 123.45;
$_SESSION['c'] = 0;
}
// обновить счетчик доступа сеанса $_SESSION['c']++;
print("Счетчик доступа: " . $_SESSION['c'] . "<br>"); print("Архив сеанса: " . session_encode() . "<br>");

boolean session_start()
Функция session_start предназначена для активизации сеанса. Если сеанса не суще­ствует, он будет создан. Так как при этом должен отсылаться файл cookie, перед отправкой какого-либо текста в браузер необходимо воспользоваться функцией session_start. Однако можно обойтись и без этой функции и настроить PHP таким образом, чтобы он автоматически запускал сеансы по запросу. Для этого следует задать в конфигурационном файле php.ini директиву session.auto_start. После запуска сеанса содержимое массива _SESSION будет сохранено для пользователя сеанса.
boolean session_unregister(string name)
Функция session_unregister предназначена для удаления переменной из сеанса и не сохраняется вместе с сеансом по завершении работы сценария. Вместо того чтобы использовать эту функцию, можно удалить соответствующий элемент из массива _SESSION.
session_unset()
Функция session_unset удаляет все переменные сеанса из массива _SESSION. session_write_close()
Эта функция немедленно сохраняет дескриптор сеанса. Обычно PHP записывает переменные сеанса после того, как завершается вывод в браузер, что делает эту функцию ненужной. При наличии параллельных соединений, использующих тот же сеанс с фреймами HTML, можно повысить производительность, закрыв сеансы вручную.
В противном случае каждый запрос блокируется до тех пор, пока не будет снята бло­кировка сеанса. Визуально это будет видно по загрузке одного фрейма за раз.