Foros del Web » Programando para Internet » PHP »

comprobar este código

Estas en el tema de comprobar este código en el foro de PHP en Foros del Web. en c suelo usar algo parecido a esto para visualizar una cadena en orden inverso <?php $cadena1[20]="manuela no amparo"; for($a=20; $a>0; $a--) print("$cadena1[$a]"); ?> no ...
  #1 (permalink)  
Antiguo 19/06/2002, 16:36
 
Fecha de Ingreso: junio-2002
Ubicación: España
Mensajes: 348
Antigüedad: 21 años, 10 meses
Puntos: 8
comprobar este código

en c suelo usar algo parecido a esto para visualizar una cadena en orden inverso
<?php
$cadena1[20]="manuela no amparo";
for($a=20; $a>0; $a--)
print("$cadena1[$a]");
?>
no sale en orden invertido, ke cambio?
en php hay caracter nulo como en c?
Gracias
  #2 (permalink)  
Antiguo 19/06/2002, 17:06
Avatar de Yagorat  
Fecha de Ingreso: marzo-2002
Ubicación: Madrid
Mensajes: 161
Antigüedad: 22 años, 1 mes
Puntos: 0
Re: comprobar este código

Buenas, ibas bien encaminado, pero debías de calcular el tamaño del array, más o menos sería así:

<?php
$cadena1 ="manuela no amparo";
$tamaño = strlen ($cadena1);
// La función strlen cuenta el número de caracteres de la cadena

for ($a = $tamaño; $a >= 0; $a--) {
echo ("$cadena1[$a]");
}
?>

Date cuenta que los arrays en php empiezan en 0 y no en 1, así que no puedes usar la condición $a>0, porque no aparecería el primer caracter.

Si quieres conocer más funciones para cadenas, como strlen, en el buscador de www.php.net pon str y veras que muchas son muy utiles.

Un saludo a todos



------------------------
Solo se que no se nada.
Yagorat - Webmaster sin web
  #3 (permalink)  
Antiguo 19/06/2002, 17:39
 
Fecha de Ingreso: junio-2002
Ubicación: España
Mensajes: 348
Antigüedad: 21 años, 10 meses
Puntos: 8
Re: comprobar este código

Gracias tio, el strlen ya lo conocia de C, pero lo que dices no me termina de convencer. si los arrays empiezan en 0, es obvio ke use la condicion $a>0 para preguntar por el primer caracter no?
Luego contradices lo ke pones con lo ke me explicas.

Enga gracias
  #4 (permalink)  
Antiguo 19/06/2002, 18:15
Avatar de Yagorat  
Fecha de Ingreso: marzo-2002
Ubicación: Madrid
Mensajes: 161
Antigüedad: 22 años, 1 mes
Puntos: 0
Re: comprobar este código

Buenas, creo que no me has entendido bien.

Los arrays empiezan por el elemento 0, si haces el siguiente for:

for ($a = $tamaño; $a >= 0; $a--) {

Le dices que realize el for mientras que $a sea mayor o igual que 0, de esta manera llegara hasta $cadena1[0], si usas la expresión $a > 0 para detener el for, ejecutara hasta $cadena1[1], pero al llegar la variable $a a 0, el for ya no ejecuta mas.

Creo haberme explicado bien ;)

Un saludo a todos


------------------------
Solo se que no se nada.
Yagorat - Webmaster sin web
  #5 (permalink)  
Antiguo 19/06/2002, 23:30
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 22 años, 5 meses
Puntos: 5
Re: comprobar este código

Para que complicarse, si en vez de ser tan cazurros nos pusieramos a leer en el manual de php.net, podriamos a ver encontrado la funcion que nos lo hace:

strrev -- Invierte una cadena


strrev

(PHP 3, PHP 4 )
strrev -- Invierte una cadena
Descripción
string strrev ( string cadena)

Devuele la cadena invertida.

Lo ves tan solo nos teniamos que revisar un poquito el manual, ya que PHP tiene de todo

<table style="border:1px solid black"><tr><td><center>
<embed width="88" height="144" src="http://www.alaplaya.com/~epplestun/yo.swf"></td></td><font face=verdana size=1>Ivan Rodriguez el poder es [B]PHP</p></td></tr></table>
  #6 (permalink)  
Antiguo 20/06/2002, 03:55
Avatar de Yagorat  
Fecha de Ingreso: marzo-2002
Ubicación: Madrid
Mensajes: 161
Antigüedad: 22 años, 1 mes
Puntos: 0
Re: comprobar este código

Buenas, jejejejej tenias razon epplestun, hay que más el manual, pero es que quería explicar un poco el funcionamiento de los arrays, ademas de esta otra manera tambien se aprende ;)

Repetiré cien veces &quot;Antes de contestar, he de mirar el manual&quot;

Voy a ver si me empollo tu discurso sobre php-gtk en gnome-hispano, pero es que en el formato que lo tengo me dejo los

Un saludo a todos.

------------------------
Solo se que no se nada.
Yagorat - Webmaster sin web
  #7 (permalink)  
Antiguo 23/06/2002, 15:08
Avatar de execon  
Fecha de Ingreso: enero-2002
Ubicación: Temuco
Mensajes: 179
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: comprobar este código

Ha Ha Ha
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:04.