the environment is windows,php5.5,codeigniter 3.1.8
the code is as follows:
<?php
session_start();
$_SESSION["admin"]="1";
$str =array("_SESSION"=>array("isadmin"=>"admin","user"=>"user1"));
extract($str);
print_r($_SESSION);
run as test.php, the result is
Array ([isadmin] = > admin [user] = > user1)
Delete the session file in the temporary directory
the code is copied to the welcome.php, of ci as follows
<?php
defined("BASEPATH") OR exit("No direct script access allowed");
class Welcome extends CI_Controller {
/**
* Index Page for this controller.
*
* Maps to the following URL
* http://example.com/index.php/welcome
* - or -
* http://example.com/index.php/welcome/index
* - or -
* Since this controller is set as the default controller in
* config/routes.php, it"s displayed at http://example.com/
*
* So any other public methods not prefixed with an underscore will
* map to /index.php/welcome/<method_name>
* @see https://codeigniter.com/user_guide/general/urls.html
*/
public function index()
{
$this->load->view("welcome_message");
}
public function test()
{
session_start();
$_SESSION["admin"]="1";
$str =array("_SESSION"=>array("isadmin"=>"admin","user"=>"user1"));
extract($str);
print_r($_SESSION);
}
}
run http://localhost/index.php/we. and the results are as follows
Array ([admin] = > 1)
ci. What"s going on?