Personalmente en las funciones que necesito mas de un valor en el return, las encapsulo en un vector...ej:
Código PHP:
<?php
function algo(){
$arr = array();
$arr[] = "uno";
$arr[] = "dos";
return $arr;
}
$val = algo();
echo $val[0] ."<br>"; #Dara uno
echo $val[1]; #Dara dos
?>
Con el tema de las global, si, suelo hacer eso, aunque podes pasarlas como valores a la funcion tipo: algo($valor);, y hasta como referencias si crees necesario declarandolas como tal en la funcion: function algo(&$valor){...
Salute