Cita:
Iniciado por mortiprogramador <saludos>
Pues en vista que no hubo answer, por ahora publico lo que llevo
Código PHP:
Ver original<?php
$cadena = 'las abejas hacen miel';
$vocalesiniciales = 'aeouáéóú';
$vocalesfinales = 'uoeaúóéá';
$cadena=strtr($cadena,$vocalesiniciales,$vocalesfinales); $cadena.'<br>';
$cadenapalabras = explode(' ',$cadena); $test = array('a','e','i','o','u','á', 'é', 'í', 'ó', 'ú'); $posicionesacambiar = array();
for( $i = 0; $i < sizeof($cadenapalabras); $i++ ) {
$k = 0;
for($j = 0; $j < strlen ($cadenapalabras[$i]); $j++) {
{
$posicionesacambiar[$i][$k] = $j;
$k++;
}
}
for($j = 0; $j < sizeof($posicionesacambiar); $j++) {
if( $j == 0 )
$l = 0;
if( $j % 2 == 0 && strlen($cadenapalabras[$i]) > 2 ) {
if ( $l == 0 || $l > 0 && strlen($cadenapalabras[$i]) % $l == 0 && $l < sizeof($posicionescambiar[$i]) ) {
$tmp = $cadenapalabras[$i][$posicionesacambiar[$i][$l]];
$cadenapalabras[$i][$posicionesacambiar[$i][$l]] = $cadenapalabras[$i][$posicionesacambiar[$i][$l+1]];
$cadenapalabras[$i][$posicionesacambiar[$i][$l+1]] = $tmp;
$l++;
}
}
}
}
echo $salida = implode(' ', $cadenapalabras); ?>
Suerte con eso!!!
</saludos> Hola mortiprogramador, muchas gracias por tu respuesta
me das varias ideas nuevas, sin embargo no lo logro aún.
funciona perfecto con palabra cortas, pero te detallo el error:
todas las consonantes se cambian de lugar (y si fueran impares la del medio quedaría en la misma posición)
ejemplo de palabras:
muercielago -> galciorume
hacen -> nucoh
'las abejas hacen miel para el murcielago'
tu codigo traduce: sul ujobus cuhon liom rupu ol amrcioluge
y sería: sul usejub nuhoc liom rupu ol galciorume
me ayudan mucho tus respuestas