繁体   English   中英

如何从PHP会话数组中删除单个元素?

[英]How to remove a single element from a PHP session array?

我有一个像php会话数组

('10/01/2017, '13/02/2017', '21/21/2107')

现在如何在O(1)中从此数组添加元素或从中删除元素

最简单的方法是获取值,删除项目并再次设置会话变量。

$data = $_SESSION['array'];    // Get the value
unset($data[1]);               // Remove an item (hardcoded the second here)
$_SESSION['array'] = $data;    // Set the session value with the new array

更新:
或就像@Qirel所说的,如果您知道电话号码,则可以直接取消设置该项目。

unset($_SESSION['array'][1]);

更新2
如果要通过元素的值删除该元素,则可以使用array_search查找该元素的键。 请注意,如果存在具有此值的元素,则仅第一个元素将被删除。

$value_to_delete = '13/02/2017';
if (($key = array_search($value_to_delete, $_SESSION['array'])) !== false)
    unset($_SESSION['array'][$key]);

要从数组中删除元素,请使用unset()函数:

 <?php
  //session array O
  unset(O["array"][1]);
 ?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM