Código PHP:
// declaramos el contenido de la cadena.
$cadena = "El vEloZ mUrciÉlAgo Hindú ComÍA feliZ CardillO y KiWi. La cigüeña tocaba el saxofón detrás del palenque de paja.";
function ExtraerCadena ($cadena){
// hacemos el contenido de la cadena en minusculas.
$cadena = strtolower($cadena);
// declaramos un array con los valores que deseamos eliminar y los remplazamos.
$valores_eliminar = array(",", ";", ".", " ");
$cadena = str_replace($valores_eliminar, '', $cadena);
// separamos en palabras la cadena
$palabras = split(" ", $cadena);
// desordenamos las palabras
$claves_aleatorias = array_rand($palabras);
echo $palabras[$claves_aleatorias];
}
for($i=0;$i<15;$i++){
ExtraerCadena ($cadena); // vuelca palabras por separado de la cadena
echo "<br>";
}
Lo que puede ocurrir es que haya resultados repetidos.
Con este código de abajo obtenes 15 resultados distintos:
Código PHP:
<?php
// declaramos el contenido de la cadena.
$cadena = "El vEloZ mUrciÉlAgo Hindú ComÍA feliZ CardillO y KiWi. La cigüeña tocaba el saxofón detrás del palenque de paja.";
function ExtraerCadena ($cadena){
// hacemos el contenido de la cadena en minusculas.
$cadena = strtolower($cadena);
// declaramos un array con los valores que deseamos eliminar y los remplazamos.
$valores_eliminar = array(",", ";", ".", " ");
$cadena = str_replace($valores_eliminar, '', $cadena);
// separamos en palabras la cadena
$palabras = split(" ", $cadena);
// desordenamos las palabras
$claves_aleatorias = array_rand($palabras);
return $palabras[$claves_aleatorias];
}
$resultados = array();
$i=0;
while($i < 15){
$valor = ExtraerCadena ($cadena);
if(!in_array($valor, $resultados)){
$resultados[] = $valor;
echo "<br>" . $valor;
$i++;
}
}
?>