我有一个数组
$tokens = array('token1','token2','token3','token4','token5','token6');
我已经将这个数组存储在SESSION
$_SESSION["tokens"] = $tokens;
现在,我需要从这个数组中删除一个元素
if(in_array('token3',$_SESSION["tokens"])) {
// remove it from the array
}
那么,我如何从$_SESSION["tokens"]
数组中删除'token3'
元素??
$key = array_search( 'token3', $_SESSION['tokens'] );
unset( $_SESSION['tokens'][$key] );
@Andrey Volk的array_search获得了这份工作。但是当您取消设置时,您可能需要array_value返回该数组的键索引,以避免离散。
$_SESSION['tokens'] = array_values($_SESSION['tokens']);
php中有一个名为"unset()"的方法,用于取消变量的设置…
当你在$_SESSION变量中使用数组时,你需要找到你想要删除的元素的键…
查找键,只需在数组中搜索一个值。有一个叫做array_search的方法,它有两个参数,第一个是要搜索的元素,第二个参数是你要搜索的数组。在本例中,使用数组搜索在$_SESSION['tokens']的token数组中搜索'token3':
$key = array_search( 'token3', $_SESSION['tokens'] );
好了,现在我们有了要删除的元素的键,那么让我们使用unset方法来删除元素:
unset( $_SESSION['tokens'][$key] );
希望有帮助!