Можно просто использовать take
метод, и индекс элемента (Последний индекс может быть -1 ).
arr = np.array([1,2,3])
last = arr.take(-1)
# 3
$size_of_session_estimate = strlen( serialize( $_SESSION ) );
Теперь это всего лишь оценка, так как обработчик сериализации не используется для сериализации сеансов, но это тоже не так уж и далеко.
При этом, как говорится,
Если вы используете Apache, загляните в свою папку APACHE_ROOT / tmp
и найдите файлы с именем sess _ ********** *
.
В противном случае возьмите сценарий из здесь и вызовите его, используя array_size ($ _ SESSION)
. Это может немного отличаться от точного значения (в зависимости от сжатия / оптимизации, выполненных вашим модулем PHP).
Это:
echo strlen(session_encode());
даст вам объем дискового пространства, используемого $ _SESSION (при условии, что session.save_handler является значением по умолчанию files ) , поскольку session_encode () возвращает строку, идентичную строке, хранящейся в файле сеанса.
Это также даст лучшее представление об объеме используемой памяти, поскольку session_encode () ] добавляет меньше метаданных, чем serialize () .
При настройке Apache по умолчанию вы можете увидеть данные сеанса, сохраненные на диске, с помощью:
session_write_close();
echo file_get_contents(sys_get_temp_dir() . 'sess_' . session_id());