Как рассчитать длину идентификатора сеанса PHP на основе значений php.ini session.hash_function
и session.hash_bits_per_character
и перед началом сеанса.PHP Как рассчитать длину идентификатора сеанса перед началом сеанса
Я хочу создать и назначить пользовательский идентификатор сеанса, например session_id($customSessionId);
, перед началом сеанса.
В моем местном значении машинного session.hash_function
равно 0 (возможные значения «0» для MD5 и «1» для SHA-1) и значение session.hash_bits_per_character
5 (возможных значений «4» [0-9, аф ], '5' [0-9, av] и '6' [0-9, az, AZ, "-", ","]), а итоговая длина идентификатора сеанса равна 26.
Какова будет длина идентификатора сеанса, когда session.hash_function
и session.hash_bits_per_character
имеют другой набор значений, который может быть рассчитан до начала сеанса?
Я хочу рассчитать идентификаторы сеанса различной длины на разных серверах (локальном, промежуточном или производственном) и проанализировать настройки сеанса по умолчанию.
Запуск сеанса и вычисление идентификатора сеанса намного проще. Но я хочу, чтобы закодировать код что-то вроде:
// $length = {code to get length from hash_function and hash_bits_per_character}
// this is my custom function to generate new session id having length $length
$myCustomSessionId = generateCustomSessionId($length);
// assign my custom session id
session_id($myCustomSessionId);
//and finally start the session :)
session_start();
Спасибо за ваш код sniplet описания длины идентификатора сессии для всех доступных {хеш-функция, бит на символ} комбинация. Но я хочу получить длину идентификатора сеанса до начала сессии, с известными значениями 'session.hash_function' и' session.hash_bits_per_character'. – rajukoyilandy