Как сказал @Thariama, количество переменных не ограничено; кроме того, нет ограничений на объем данных, которые вы можете хранить в сеансе (я видел сеансы размером в десятки МБ).
По мере увеличения размера сеанса вы столкнетесь с различными причудами: PHP 5 десериализует весь сеанс в память на session_start()
(используя обработчик сеанса по умолчанию - вы можете создать собственное решение , конечно); с сеансом 20 МБ и 50 одновременными пользователями ваши сценарии начинают сильно ограничиваться скоростью доступа к диску (например, «запуск сценария медленный, как меласса» - одни сеансы будут занимать ГБ ОЗУ); в конце концов, мы выделили ящик для хранения как можно большего количества сессий в своей оперативной памяти, и внешние интерфейсы получили к ним доступ через NFS (хотя это помогло в нашем случае, это может быть излишним для вас).
Обратите внимание, что для многих одновременно работающих пользователей и хранилищ сеансов на диске количество временных файлов сеансов может вызвать проблемы с ограничениями файловой системы (например, сколько файлов может находиться в одном каталоге, прежде чем возникнут проблемы с производительностью stat()
) или другие ограничения (мы когда-то нашли сложный способ настройки бокса для одновременного открытия только 4096 файлов). Ничто из этого не является специфичным для сеанса, но может быть вызвано обработкой сеанса.