HO questo codice che tramite le espressioni regolari estrapola dei nomi di stato da un sito :
codice:
<?php //inserisco la pagina nella variabile
            $page='http://www.futbol24.com/';
            
            //creo un array conposto da tutte le linee della pagina
            $lines = file($page);

            //creo unarray vuoto da popolare
            $parole=array();


            //scorro le linee della pagina
            foreach ($lines as  $testo) {
                echo 'testo'.$testo;
                
                //cerco il testo compreso tra /national e la /
                preg_match_all('(/national/(.*?)/)', $testo, $ris);

                //controllo se esiste la parola nella riga se esiste metto il risultato nella variabile
                if(isset($ris[1][0])){
                    $risultato =$ris[1][0];
                }
                //se non esiste setto $risultato come null
                else{
                    $risultato=null;
                }
                

                //se risultato è diverso da null 
                if($risultato!=null){



              

                        //metto il valore nell'array
                    
                        array_push($parole, $risultato);
                        
                    
                } 
            }

            echo 'Prima di array_unique:<br/>';
            print_r($parole);

            $result=array_unique($parole);

            echo 'Dopo  array_unique:<br/>';
            print_r($result);
Di fatto la'array parole e result sono la stessa cosa nonostante ci siano dei valori duplicati , perchè ?