<?php

function nums(){
   
   $num3 = rand(1, 6); // número que irá se repetir 3 vezes
   $array = array(); // declara a array
   // insere o valor nas 3 primeiras posições da array
   array_push($array,$num3,$num3,$num3);

   // enquanto a areray não tiver 9 posições
   while(sizeof($array) < 9){
      // número aleatório de 1 a 6
      $num = rand(1, 6);
      
      // se este número for diferente do número repetido 3 vezes
      // se for igual, o while continua rodando
      if($num3 != $num){
         
         // contador para contar ocorrências
         $conta = 0;
         
         // verifica ocorrências do número
         for($x = 0; $x < sizeof($array); $x++){
            if($array[$x] == $num) $conta++;
         }
         
         // se houver menos de 2 ocorrências
         // adiciona o núemro na array
         if($conta < 2) $array[] = $num;
         
      }
      
   }
   
   // randomiza a ordem dos elementos
   shuffle($array);

   // retorna a array
   return $array;
}

print_r(nums());