从PHP数组中删除值(如果存在)

从PHP数组中删除值(如果存在),php,arrays,Php,Arrays,我有以下PHP数组: Array ( [0] => 750 [1] => 563 [2] => 605 [3] => 598 [4] => 593 ) 我需要使用PHP对数组执行以下操作: Array ( [0] => 750 [1] => 563 [2] => 605 [3] => 598 [4] => 593 ) 在数组中搜索一个值(该值将位于 变量

我有以下PHP数组:

Array
(
    [0] => 750
    [1] => 563
    [2] => 605
    [3] => 598
    [4] => 593
)
我需要使用PHP对数组执行以下操作:

Array
(
    [0] => 750
    [1] => 563
    [2] => 605
    [3] => 598
    [4] => 593
)
  • 在数组中搜索一个值(该值将位于 变量;我们称之为
    $number
    )。如果值 如果阵列中存在,请将其删除
  • 如果有人能教我怎么做,我将不胜感激

    注意:如果这样做更简单,我可以形成数组,使键与值相同

    $array = array_unique($array) // removes dupicate values
    
    
    while(false !== ($num = array_search($num, $array))){
        unset($array[$num]);
    }
    $max = max($array);
    
    将搜索值为$num的所有键并将其取消设置


    将搜索值为$num的所有键并将其取消设置

    假设您的
    $array

    $array = array_unique($array) // removes dupicate values
    
    $array = arsort($array) 
    
    $variable = $array[0]  //  the maximum value in the array, and place it in a variable.  
    
    $key = array_search($array, $number);
    
    if($key){
    
        unset($array[$key])  // Search array for a value, value is present in array, remove it.
    
    }
    

    假设您的
    $array

    $array = array_unique($array) // removes dupicate values
    
    $array = arsort($array) 
    
    $variable = $array[0]  //  the maximum value in the array, and place it in a variable.  
    
    $key = array_search($array, $number);
    
    if($key){
    
        unset($array[$key])  // Search array for a value, value is present in array, remove it.
    
    }
    
    array\u search()
    unset()
    对于问题中的示例数据似乎是一种很好的方法。为了比较起见,我将展示一种不同的方式(或者如果您的用例与您在这里发布的略有不同)

    方法:()

    输出:

    array (
      0 => 750,
      1 => 563,
      3 => 598,
      4 => 593,
    )
    
    array (
      0 => 750,
      3 => 598,
      4 => 593,
    )
    
    array (
      0 => 750,
      1 => 598,
      2 => 593,
    )
    
    array\u search()
    unset()
    对于问题中的示例数据似乎是一种很好的方法。为了比较起见,我将展示一种不同的方式(或者如果您的用例与您在这里发布的略有不同)

    方法:()

    输出:

    array (
      0 => 750,
      1 => 563,
      3 => 598,
      4 => 593,
    )
    
    array (
      0 => 750,
      3 => 598,
      4 => 593,
    )
    
    array (
      0 => 750,
      1 => 598,
      2 => 593,
    )
    


    看在上帝的份上,阅读文档,这是三个完全不同的问题。请看第3个问题。好的,我已经找到了最小值和最大值,并删除了重复项,但是如果存在特定值,我如何删除它?我将对这个问题进行编辑,只包含这个问题。看在上帝的份上-阅读文档,这是3个完全独立的问题。请看第3个问题。好的,我已经找到了最小值和最大值,并删除了重复项,但是如果存在特定值,我如何删除它?我将编辑这个问题,仅限于此。非常感谢您提供如此出色的答案。我将能够查找每个函数并更好地理解它。再次感谢!非常感谢你提供了这么好的答案。我将能够查找每个函数并更好地理解它。再次感谢!while循环应该专门检查
    !==false
    因为如果找到第一个元素(索引0),您的代码将不会取消设置该元素。@genesisφ-谢谢您的回答。与Josh Randall解除键的方法相比,你感觉如何?@stefmikhail:他的方法有点复杂和难。@genesisφ-不知道你是否看到了我最初的问题,但它是为了解释如何删除重复项以及如何在变量中放置最大值。你对乔希·兰德尔关于这些问题的回答有何看法?@stefmikhail:不,第二步错了。我将把它添加到我的回答中。while循环应该专门检查
    !==false
    因为如果找到第一个元素(索引0),您的代码将不会取消设置该元素。@genesisφ-谢谢您的回答。与Josh Randall解除键的方法相比,你感觉如何?@stefmikhail:他的方法有点复杂和难。@genesisφ-不知道你是否看到了我最初的问题,但它是为了解释如何删除重复项以及如何在变量中放置最大值。你对乔希·兰德尔关于这些问题的回答有何看法?@stefmikhail:不,第二步错了。我会把它加到我的答案里