Notice: 函数 WP_Scripts::localize 的调用方法不正确$l10n 参数必须是一个数组。若要将任意数据传递给脚本,请改用 wp_add_inline_script() 函数。 请查阅调试 WordPress来获取更多信息。 (这个消息是在 5.7.0 版本添加的。) in /data/www/appblog/wp-includes/functions.php on line 6131

PHP删除数组中某元素

array_splice

代码如下:

$arr = array(1, 2, 3, 4, 5);
$key = array_search(3, $arr);

if ($key !== false)
    array_splice($arr, $key, 1);
var_dump($arr);

输出:

array(4) { [0]=> int(1) [1]=> int(2) [2]=> int(4) [3]=> int(5) }

array_splice

代码如下:

$arr = array(1, 2, 3, 4, 5);
foreach ($arr as $key => $value) {
    if ($value === 3)
        unset($arr[$key]);
}
var_dump($arr);

输出:

array(4) { [0]=> int(1) [1]=> int(2) [3]=> int(4) [4]=> int(5) }

总结

可以看到使用array_splice()删除特定值和使用unset删除特定值是有区别的。

array_splice()函数删除的话,数组的索引值也产生变化。

unset()函数删除的话,数组的索引值没有变化。

上一篇 PHP数组及其操作
下一篇 PHP获取请求路径和请求参数