1

私は次の仕事をしなければなりません。

1)配列を取得し、seesionに保存します。開始時にそれは空のエラーであり、私はこれをやっています

    $id_array=array();
    $this->session->set_userdata('PID', $id_array);

2)その後、ユーザーから値を取得し、コントローラーに移動します。セッションから配列を取得します。最初は空でした。そのユーザー値を配列に挿入してから、その配列をセッションに再度挿入します。私はこのようにやっています...

 $username['name']=$this->session->userdata['PID'];
 array_push($username,$PID);//this $PID is variable which i m getting from user
 $this->session->set_userdata('PID', $username);

したがって、ユーザーはこのプロセスを2回と3回繰り返します。つまり、3つの値がセッションの別のインデックスに挿入されたことを意味します。しかし、最後にセッションからデータを取得して印刷します。これらの値はありますが、インデックスは同じです...しかし、私の要求インデックスによると、異なるはずです。私はそのようにそれを印刷しています

 $username['name']= $this->session->userdata('PID');
 print_r($username);

私は3回で6を入力しました。6は012インデックスに3回表示されるはずですが、6は3回表示されますが、このように同じインデックスに表示されます。

Array ( [name] => Array ( [name] => Array ( [name] => Array ( [name] => Array ( [name] => Array ( ) [0] => 6 ) [0] => 6 ) [0] => 6 ) [0] => 6 ) )

何が問題なのかわかりません。

4

1 に答える 1

1

これを試して。

 $username=$this->session->userdata['PID'];  // read the session
 array_push($username,$PID);//this $PID is variable which i m getting from user
 $this->session->set_userdata('PID', $username);                               

これにより、配列から「name」インデックスが削除されます。

于 2013-01-14T06:42:44.717 に答える