Como devo retornar várias variáveis ​​em uma função (para práticas recomendadas)?

Apenas curioso para saber qual seria a melhor prática para algo assim:

Uma função que retorna múltiplas variáveis ​​- como devemos retornar essas variáveis?

assim (globalizando):

function myfun(){

global $var1,$var2,$var3;

$var1="foo";
$var2="foo";
$var3="foo";

}//end of function

ou assim (retornando um array):

function myfun(){

$var1="foo";
$var2="foo";
$var3="foo";

$ret_var=array("var1"=>$var1,"var2"=>$var2,"var3"=>$var3);

return $ret_var;

}//end of function

Eu fiz um teste de desempenho e parece que usar matrizes é mais rápido (depois de algumas atualizações):

array took: 5.9999999999505E-6
global took: 2.0999999999938E-5

Mas estou curioso para saber qual método é o mais praticado para uma situação simples como essa?

questionAnswers(6)

yourAnswerToTheQuestion