aqui una modificacion pasandole los datos mediante un array, ya que retornando las variables genera un error:
Código PHP:
Ver originalfunction posicion($X){
//recibo y cuento los caracteres
//registro los caracteres menos uno
$cuenta = ($letra_can - 1);
//busco la primera letra de la cadena
$letra_B = substr($X, 0, -$cuenta );
//letras del alfabeto
$letras = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','ñ','o','p','q','r','s','t','u','v','w','x','y','z');
//almaceno la posicion de la letra en el array y le sumo un digito
//retorno el numero a comparar
return ($letra_C + 1);
}
//cadenas a comparar
$wordA = "casa";
$wordB = "ferrocarril";
$wordC = "xilofon";
'A' => "casa",
'B' => "ferrocarril",
'C' => "xilofon",
);
//variables en las que amaceno el numero a comparar
$word1A = posicion($wordA);
$word2A = posicion($wordB);
$word3A = posicion($wordC);
//function
function wordSort($word1, $word2, $word3, $Y){
if ($word1 > $word2 && $word1 > $word3) {
if ($word2 > $word3) {
$result = $Y['A']." ".$Y['B']." ".$Y['C'];
} else if ($word3 > $word2) {
$result = $Y['A']." ".$Y['B']." ".$Y['C'];
}
}else if ($word2 > $word1 && $word2 > $word3) {
if ($word1 > $word3) {
$result = $Y['B']." ".$Y['A']." ".$Y['C'];
} else if ($word3 > $word1) {
$result = $Y['B']." ".$Y['C']." ".$Y['A'];
}
//fin segundo
} else if ($word3 > $word1 && $word3 > $word2) {
if ($word1 > $word2) {
$result = $Y['C']." ".$Y['A']." ".$Y['B'];
} else if ($word2 > $word1) {
$result = $Y['C']." ".$Y['B']." ".$Y['A'];
}
}//fin tercero
return $result;
}
echo "Ordenadas alfabeticamente:".wordSort($word1A, $word2A, $word3A, $datos);