elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 04:41  


Tema destacado: ¡Aprende hacking con práctica! - WarZone, el wargame de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP
| | | |-+  Pregunta sobre código
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Pregunta sobre código  (Leído 452 veces)
darkvidhack

Desconectado Desconectado

Mensajes: 119


Obsesionado!!


Ver Perfil
Pregunta sobre código
« en: 18 Agosto 2011, 12:39 »

Hola!! tengo un problemilla con este código:

Código
<?
 
function saca (&$message,$cadena,&$caracter,&$caracter2){
$cadena;
$i=strpos($message,$caracter2)+3-strpos($message,$caracter);
$b=strpos($message,$caracter);
$a=0;
   for($a;$a<=$i;$a++,$b++){
   $cadena[$a]=$message[$b];
   }
   return $cadena;
}
 
?>

Explico un poco:
$message  -->  Cadena formada por el cuerpo de un mail
$caracter  -->  Cadena "http://"
$caracter2   -->  Cadena ".com"

$i= numero de caracteres que hay entre 'h' de http y 'm' de .com
$b=posicion de la cadena $message donde empieza la subcadena 'http://......com"

strpos() devuelve un entero con la posición de una subcadena dentro de otra cadena, en el primer caso, la posición de la subcadena $caracter2 en la cadena $message.

La cuestión es que al hacer:

Código
echo saca($message,$cadena,$caracter,$caracter2);
 

me muestra ARRAY , sin embargo, haciendo un bucle que recorra todo el string y me muestre caracter por caracter me lo hace bien, no se porqué así no me la muestra, quizás me estoy pasando algo xD.

Podrían ayudarme?

Muchas gracias de antemano ;)


En línea

live and let die

la duda es la base de todo conocimiento
EFEX


Desconectado Desconectado

Mensajes: 327


"Dinero Facil"


Ver Perfil WWW
Re: Pregunta sobre código
« Respuesta #1 en: 18 Agosto 2011, 13:58 »

Si te imprime ARRAY, por que el valor devuelto es un array, para mostrar un array basta con:

Código
print_r($array);

Explicaciòn Arrays en PHP


En línea


GITHUB: github.com/empirefx
darkvidhack

Desconectado Desconectado

Mensajes: 119


Obsesionado!!


Ver Perfil
Re: Pregunta sobre código
« Respuesta #2 en: 18 Agosto 2011, 14:50 »

Pues sigue sin funcionar xD, es más, para imprimir una cadena, creo que es igual de válido el 'print' que el 'echo', si no me equivoco xD, lo extraño es que imprimer lo mismo que si se pusiera:

$cadena=Array();
echo $cadena;

No tengo la menor idea de qué puede ser :S
En línea

live and let die

la duda es la base de todo conocimiento
drvy | BSM


Desconectado Desconectado

Mensajes: 1.129


badstupidmonkey


Ver Perfil WWW
Re: Pregunta sobre código
« Respuesta #3 en: 18 Agosto 2011, 17:36 »

Pues si te he entendido bien, no me lo explico xD


Haces un for, en ese for agregas a $cadena(al que automaticamente conviertes en array al introducir [$a]) el mensaje y luego lo retornas.

No veo el problema. Te deberia de sacar Array sin mas. Estas haciendo un array y lo retornas como tal ¬¬.

Si quieres que te devuelva una cadena usa implode antes del retorno.


Saludos
En línea
darkvidhack

Desconectado Desconectado

Mensajes: 119


Obsesionado!!


Ver Perfil
Re: Pregunta sobre código
« Respuesta #4 en: 19 Agosto 2011, 00:49 »

Hola! encontré algo que me sirve, pero no con este método, sino extrayendo una subcadena con la función substr()

Muchas gracias!!


Saludos ;)
En línea

live and let die

la duda es la base de todo conocimiento
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines