J'ai écrit une page de connexion en utilisant ci, le code est le suivant :
print_r($this->session->userdata());
$this->session->set_userdata('test',rand(564,489426354465));
echo '<br>';
print_r($this->session->userdata());
Sortie :
Array ( [__ci_last_regenerate] => 1497598658 )
Array ( [__ci_last_regenerate] => 1497598658 [test] => 115826667932 )
Peu importe le nombre de fois que la page est actualisée, l'horodatage qui n'existe pas dans la session test
的值,只是__ci_last_regenerate
a augmenté. Pourquoi ? Quelqu'un a-t-il rencontré cette situation ?
.Vérifiez 1, ce n'est pas un problème de configuration php. J'ai créé un fichier php dans le répertoire racine. Le code est le suivant. La session correcte peut être affichée à chaque fois
session_start();
ob_start();
print_r($_SESSION);
$_SESSION['test'] = rand(456,4984945569);
print_r($_SESSION);
La version originale de ci était 3.1.0 (une constante définie dans /system/core/CodeIgniter.php). Plus tard, elle a été écrasée par tous les fichiers dans 3.1.3
system
, et le problème a été résolu. 0. bug ?J'ai déjà utilisé php5.5, mais je l'ai changé en php7.1.4 il y a quelques jours. Je ne sais pas si c'est la raison
.