如何在php中通过空键取消设置数组
Posted
技术标签:
【中文标题】如何在php中通过空键取消设置数组【英文标题】:How to unset an array by null key in php 【发布时间】:2015-06-10 06:35:09 【问题描述】:之前:
$my_array = Array ( [TRUE] => 1 [FALSE] => 2 [] => 0 )
如果 key[] 为空,我想删除数组。
我的概念:
if ($my_array.key is null)
unset($my_array.key)
希望数组变成:
$my_array = Array ( [TRUE] => 1 [FALSE] => 2)
【问题讨论】:
你的概念成功了吗? 仅供参考:您可以在这里参观:***.com/tour,看看这个网站是如何运作的以及一切都在哪里。 @carinhere 它不起作用 你这是什么意思?你的概念? (另外,如果你想给某人写点东西,请使用:@username
)
【参考方案1】:
你不需要像这样取消设置array_filter()
它:
<?php
$my_array = [TRUE => 1, FALSE => 2, NULL => 0];
print_r($my_array);
$my_array = array_filter($my_array, "strlen", ARRAY_FILTER_USE_KEY);
print_r($my_array);
?>
输出:
Array ( [1] => 1 [0] => 2 [] => 0 )
Array ( [1] => 1 [0] => 2 )
旁注:
键实际上不能为 NULL。你也可以在manual看到这个:
键可以是整数或字符串。该值可以是任何类型。
意味着您的“NULL”键被强制转换为空字符串。您可以通过var_dump()
看到这一点:
array(3) [1]=> int(1) [0]=> int(2) [""]=> int(5)
//^^^^ See the key is just an empty string
【讨论】:
以上是关于如何在php中通过空键取消设置数组的主要内容,如果未能解决你的问题,请参考以下文章