Codice PHP:
<?php
/* 
utilizzo:

voglio sapere se ci sono diversi aghi in pagliaio
echo is_duplicate($ago,$pagliaio)    restituisce true/false

voglio sapere se ci sono diversi aghi in pagliaio e ripulire l'array
$out= is_duplicate($ago,$pagliaio,true)    restituisce un $out è l'array filtrato

*/
$array_test=array('a'=>1,'b'=>2,'c'=>3,'d'=>1);

echo (
is_duplicate(1,$array_test))?'diverse occorrenze trovate':'valore singolo'// restituisce  diverse occorrenze trovate

$pruned=is_duplicate(1,$array_test,true);
echo 
"<pre>";print_r($pruned);echo "</pre>";



function 
is_duplicate($value,$inarray,$prune=false)
  {
  
$finded="";
  foreach(
$inarray as $k=>$v)
    {
    if (
$v == $value)
      {
      if(
$finded == "")             {$finded $k;continue;}
      if (
$prune && $finded !="")   {unset($inarray[$k]);continue;}   
      if(
$finded !="")              {return true;}
      }
    }
  if (
$prune) return $inarray;
  return 
false;
  }
?>