如何在codeigniter中取消设置特定数据数组
我和这些家伙一起工作已经两天了。这里需要帮助 这是我的看法如何在codeigniter中取消设置特定数据数组,codeigniter,session,Codeigniter,Session,我和这些家伙一起工作已经两天了。这里需要帮助 这是我的看法 $username = json_decode($this->session->userdata('users'), TRUE); foreach ($username AS $key => $value) { <?php echo $value['username']; ?> <?php echo $value['firstname']; ?> <?p
$username = json_decode($this->session->userdata('users'), TRUE);
foreach ($username AS $key => $value) {
<?php echo $value['username']; ?>
<?php echo $value['firstname']; ?>
<?php echo $value['lastname']; ?>
<?php $u = $value['username']; ?>
<?php echo "<a href=".base_url()."index.php/bets/un_sess/$u /> X </a> " ?>
<?php } ?>
从用户_数据获取数组
{"username":"user1","firstname":"name1","lastname":"name2"},
{"username":"user2","firstname":"test","lastname":"test"}
当我第一次单击用户名是有效的,但当我点击另一个用户名时,会出现如下错误 遇到一个PHP错误 严重性:警告 消息:isset中的偏移量类型非法或为空 文件名:libraries/Session.php 行号:433遇到PHP错误 严重性:警告 消息:为foreach()提供的参数无效 文件名:controllers/bets.php 电话号码:290
好的,因为我的问题没有答案。这是我的解决方案
$user = json_decode($this->session->userdata('users'), TRUE);
foreach ($user AS $key => $value) {
if ($username == $value['username']){
unset($user[$key]);
}
}
$this->session->set_userdata('users', json_encode($user));
看看您的控制器,您正在将json_解码的数据存储在
$user1
中,然后在ForEach中使用$user
,当我将$user1更改为$user时,它会给出如下错误:遇到PHP错误严重性:警告消息:json_decode()预期参数1为字符串,数组给定文件名:controllers/bets.php行号:288这是我的答案$user=json\u decode($this->session->userdata('users'),TRUE);foreach($user AS$key=>$value){if($username===$value['username']){//$array\u items=array('username'=>$value['username'],'firstname'=>$value['firstname'],'lastname'=>$value['lastname']);unset($user[$key]);}$this->session set->set_userdata('users',json_encode user');
$user = json_decode($this->session->userdata('users'), TRUE);
foreach ($user AS $key => $value) {
if ($username == $value['username']){
unset($user[$key]);
}
}
$this->session->set_userdata('users', json_encode($user));