php "invertir cadena texto"

BaRKill0rZ

buenas necesito hacer lo siguiente:

Muestra el contenido de una cadena de texto en orden inverso, empezando por su último carácter hasta su primer carácter.

No logro avergiuar como sacarlo , lo maximo que he llegado es que hay q usar el array_reverse pero no me entero de nada. pd:soy un noob en php

SikorZ

#1 Coges una palabra en un array por ejemplo:

PEPE
array[1]=p
array[2]=e
array[3]=p
array[4]=e

Y ahora cogemos el array por la ultima posicion, en este caso la 4 y recorremos el array en orden inverso, del 4 al 1.

Esto se podria hacer con un contador que fuera letra a letra hasta que sea =="" para que vea que no hay mas letras y asi podemos contar las posiciones

EDIT: Aqui te dejo un ejemplo:

1
BaRKill0rZ

Muchisimas gracias tio :P te debo 1

bLaKnI

Por dios. No hagas lo de 2, anda...
Que PHP va sobrado.

Primero, una cadena de per se, es un array.
Entonces, "HOLA", es lo mismo que [0] = H, [1] = O, ...
Por lo tanto podrias pensar en array reverse via casting (array).

En cualquier caso, mejor eso:

http://www.php.net/manual/en/function.strrev.php

3 respuestas
tOWERR

Pues si te han mandado dar la vuelta a la cadena mediante un metodo echo ya, ¿que manera es de enseñar esa?
Lo suyo es mediante un bucle ir concatenando en otra cadena auxiliar los caracteres desde el ultimo al primero y listo. Asi por lo menos aprendes, de la otra manera no aprendes nada tio.

PD: Nose si te lo han mandado para el instituto, si te lo han mandado en el instituto hazlo como te he dicho para ir manejando bucles y cadenas. Si es para el curro adelante con la función que te ha dicho #4.

dr_Rouman

Si son tareas: haz el bucle
Si es para algo serio: usa las funciones

La regla #1 de esto es no reinventar la rueda

SikorZ

#4 Pues eso dije en 2 xDDD... recorrer el array en orden inverso hijo.

for(letra maxima -> [0]
print

y ya esta xD...

LOc0

Tardes de sábado la la la xD...

(No había visto el link de #4) Y de regalo otra versión ;):

<?php

function invierte_cadena($c, $i=0, $l=-1)
{
	return $i<($l=$l<0?strlen($c)-1:$l)?(invierte_cadena($c, $i+1, $l).$c[$i]):($l<0?'':$c[$i]);
}

echo invierte_cadena('El pollo Popeye es la polla!');

?>
skela

Lo unico que teniamos que poner era un simple

$cadena = "ola don pepito";

$invertir=strrev($cadena);

echo $invertir;

FIN

2puntos mas en el cuestionario :D

Usuarios habituales

  • skela
  • LOc0
  • SikorZ
  • dr_Rouman
  • tOWERR
  • bLaKnI
  • BaRKill0rZ