$arr = array(1,2,3,3);
$str = implode('',$arr);
$arrres = array_unique($arr);
foreach($arrres as $k=>$v)
{
$num = substr_count($str,$v);
if($num == 1)
{
$res[] = $v;
}
}
print_r($res);

解决方案 »

  1.   

    $array = array(1,2,3,3);
    $t = array_diff($array,
      array_keys(
        array_filter(
          array_count_values($array), function($v) { return $v>1;})
        )
      );
    print_r($t);Array
    (
        [0] => 1
        [1] => 2
    )
      

  2.   

    谢谢你提供的思路,但是代码好像可以简单点:<?php
    $arr = array(1,2,3,3);
    $str = implode('',$arr);
    foreach($arr as $k=>$v)
    {
    $num = substr_count($str,$v);
    if($num == 1){
    $res[] = $v;
    }
    }
    print_r($res); 
    ?>,
      

  3.   

    稍稍简化一下$array = array(1,2,3,3);
    $t = array_diff($array,
      array_keys(
        array_diff(
          array_count_values($array), array(1))
        )
      );
    print_r($t);
      

  4.   

    $array=array(1,2,3,3);
    $a=array_count_values($array);
    $item=array();
    foreach($a as $k=>$v) if($v==1) $item[]=$k;
    print_r($item);