@JohnDidact
Нуб во всём

Почему session_start() не принимает параметры?

PHP 5.6. OpenServer.
Функция, как я понял, игнорирует передаваемые ей параметры - ассоциативный массив с опциями.
session_start([
 'save_path' => JDSys::ware('tmp_sess', true),    // JDSys::ware() возвращает полный путь к директории с временными файлами сессии,
 'name' => 'CONST',                               // ключ к имени временной сессии в куках,
 'read_and_close' => true,                        // прочитать и не блокировать файл сессии.
]);
этот код, почему-то, не срабатывает: файл сессии сохраняется во временной дире сервера, ключ в куках - PHPSESSID, а файл сессии блокируется и перезаписывается.
Если делаю так:
session_save_path(JDSys::ware('tmp_sess', true)); // работаю с сессией в папке с временными сессиями,
session_name('CONST');                            // индекс сессии в куки - CONST,
session_start();
session_write_close();                            // записываю данные сессии в файл и снимаю с блокировки.
то всё идёт так, как задумано.

Я бы не хотел писать столько лишнего кода (не нужно меня за это ненавидеть) и на мгновение, но блокировать файл сессии.

Что не так? Может, я что-то упустил???
  • Вопрос задан
  • 118 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы