迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > PHP >

如何在 PHP 中按值而非键执行数组删除

作者:迹忆客 最近更新:2023/03/21 浏览次数:

本文将介绍在 PHP 中从数组中删除值的不同方法。

在 PHP 中使用 array_search()unset() 函数执行数组的非键值删除

按值而非键进行数组删除的主要程序是先找到值。我们可以在找到值之后再进行删除。我们将使用 array_search() 函数找到该值,并使用 unset() 函数删除该值。unset() 函数会重置一个变量。使用这些函数的正确语法如下。

array_search() 的语法

array_search($value, $array, $strict);

内置函数 array_search() 有三个参数。它的详细参数如下

参数   说明
$value 强制 它是我们要在数组中搜索的值
$array 强制 它是一个数组,我们将在其中搜索给定的值。
$strict 可选 如果这个参数设置为 True,那么该函数也将搜索数组中的相同元素。

该函数返回给定值的键。

unset() 的语法

unset($variable1, $variable2, ..., $variableN);

内置函数 unset() 有多个参数。其详细参数如下

参数   说明
$variable1, $variable2, $variableN 强制 它是我们要取消设置的变量或数据结构。至少有一个变量是必须的。

这个函数不返回任何内容。

在 PHP 中从数组中删除值的示例

下面的程序显示了如何使用这些函数在 PHP 中按值而不是键执行数组删除。

<?php
$array = array("Rose","Lili","Jasmine","Hibiscus","Daffodil","Daisy");
echo("Array before deletion: \n");
var_dump($array);
$value = "Jasmine";
if (($key = array_search($value, $array)) !== false) {
    unset($array[$key]);
}
echo("Array after deletion: \n");
var_dump($array);
?>

输出:

Array before deletion: 
array(6) {
  [0]=>
  string(4) "Rose"
  [1]=>
  string(4) "Lili"
  [2]=>
  string(7) "Jasmine"
  [3]=>
  string(8) "Hibiscus"
  [4]=>
  string(8) "Daffodil"
  [5]=>
  string(5) "Daisy"
}
Array after deletion: 
array(5) {
  [0]=>
  string(4) "Rose"
  [1]=>
  string(4) "Lili"
  [3]=>
  string(8) "Hibiscus"
  [4]=>
  string(8) "Daffodil"
  [5]=>
  string(5) "Daisy"
}

在 PHP 中使用 array_diff() 函数执行按值而非按键删除数组的操作

在 PHP 中,我们也可以使用 array_diff() 函数来执行按值而非键删除数组。这个函数计算一个给定数组与另一个数组的差值。正确使用该函数的语法如下。

语法

array_diff($array, $Arr1, $Arr2, ...,$ArrN);

函数 array_diff() 接受 N+1 个参数。它的详细参数如下。

参数名称   说明
$array 强制 它是我们要从其中删除一个值的主数组
$Arr1$Arr2$ArrN 强制 就是我们要删除的数组。该函数将取其与数组的差值,如果存在,则将其从数组中删除。

按值而不是按键执行数组删除的程序如下。

<?php
$array = array("Rose","Lili","Jasmine","Hibiscus","Daffodil","Daisy");
echo("Array before deletion: \n");
var_dump($array);
$value = array("Jasmine");
$array = array_diff( $array, $value);
echo("Array after deletion: \n");
var_dump($array);
?>

输出:

Array before deletion: 
array(6) {
  [0]=>
  string(4) "Rose"
  [1]=>
  string(4) "Lili"
  [2]=>
  string(7) "Jasmine"
  [3]=>
  string(8) "Hibiscus"
  [4]=>
  string(8) "Daffodil"
  [5]=>
  string(5) "Daisy"
}
Array after deletion: 
array(5) {
  [0]=>
  string(4) "Rose"
  [1]=>
  string(4) "Lili"
  [3]=>
  string(8) "Hibiscus"
  [4]=>
  string(8) "Daffodil"
  [5]=>
  string(5) "Daisy"
}

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 PHP 中获取时间差的分钟数

发布时间:2023/03/29 浏览次数:183 分类:PHP

本文介绍了如何在 PHP 中获取时间差的分钟数,包括 date_diff()函数和数学公式。它包括 date_diff()函数和数学公式。

PHP 中的重定向

发布时间:2023/03/29 浏览次数:136 分类:PHP

本教程演示了如何将用户从页面重定向到 PHP 中的其他页面

PHP 分页

发布时间:2023/03/29 浏览次数:66 分类:PHP

本教程介绍如何在 PHP 中对数据库行进行分页

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便