PHP unset()为什么不能处理所有情况

时间:2017-05-05 03:56:48

标签: php session unset

我第一次遇到这样奇怪的问题。我有一个包含此代码的文件:

<?php
session_start();
//if I dump session:
var_dump($_SESSION['product']);
//I get this:
array(2) { [1260]=> string(1) "1" [799]=> string(1) "1" }
//if I try to unset session [1260]
if(isset($_POST['delete']) && !empty($_POST['delete'])){
echo 'here';
unset($_SESSION['product'][1260]);
}
//unset() or session_destroy() at all not working
//if I unset($_SESSION['product'][1260]); without 
if(isset($_POST['delete']) && !empty($_POST['delete'])){
}
//it is working
?>

在IF情况下,未设置或session_destroy无法工作的原因是什么?

2 个答案:

答案 0 :(得分:0)

问题可能是$_POST['delete'] = '';,因此您只需要if(isset($_POST['delete'])

如果你想在你提交的表格中使用这个条款if(isset($_POST['delete']) && !empty($_POST['delete'])),你需要为&#34;删除&#34;输入

例如:

<input type="hidden" name="delete" value="1" />

答案 1 :(得分:0)

好吧,伙计们,问题是在页面上我有一个代码正在生成新的会话记录..真的很抱歉花时间......!谢谢你支持我。给我-1这个:)我应得的:)