【问题标题】:Checking an integer array for duplicate values in PHP在 PHP 中检查整数数组中的重复值
【发布时间】:2013-02-08 12:29:05
【问题描述】:

以下是我的代码:

$array1=('23','3','55','67');
function has_dupes($array1){
 $dupe_array = array();
 foreach($array1 as $val){
  if(++$dupe_array[$val] > 1){
   return true;
  }
 }
 return false;
}

我是 PHP 新手,想编写一个函数来检查数组中是否存在重复整数。我的代码如下:

它给出一个错误:Parse error: syntax error, unexpected ',' on line 1

【问题讨论】:

标签: php arrays integer


【解决方案1】:

你错过了array关键字

$array1 = array('23','3','55','67');
         ^ // here was the mistake

【讨论】:

    【解决方案2】:
    function has_duplicates($myArray) {
        return (max(array_count_values($myArray)) > 1);
    }
    

    【讨论】:

      【解决方案3】:

      您的直接问题是您使用了错误的数组语法。正确的要么是

      $array1 = ['23','3','55','67']; // only possible in PHP >= 5.4
      

      $array1 = array('23','3','55','67'); // all versions of PHP
      

      关于欺骗检测功能,你不需要一个,因为有一个现成的你可以使用:array_unique

      if (count(array_unique($array)) != count($array)) {
          // the array has dupes
      }
      

      【讨论】:

      • @j0k:嗯,它已经发布了快一年了。无论如何,我添加了一条评论来澄清。
      • 我知道,遗憾的是 PHP 5.4 与 PHP 5.3 相比并没有真正使用。
      【解决方案4】:

      您可以使用array_unique 轻松执行此检查。只需将原始数组的长度与数组的唯一版本的长度进行比较。

      function has_dupes($array){
        return count($array) != count(array_unique($array));
      }
      

      您还想使用array() 声明一个数组。

      【讨论】:

        【解决方案5】:
        $array1= array(23,3,55,67);
        

        线程整数作为整数。

        【讨论】:

          【解决方案6】:

          通过将数字放在引号中,您将它们视为字符串。另外,数组语法错误……

          $array1 = array(1,2,25,26);
          

          【讨论】:

            【解决方案7】:

            这是错误

            $array1=array('23','3','55','67');
            

            【讨论】:

              【解决方案8】:

              你为什么不这样做呢?

              $array1 = array_unique($array1)
              

              我是否误解了这个问题?

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 2011-06-24
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多