Foros del Web » Programando para Internet » PHP »

recoger texto especifico de variable string

Estas en el tema de recoger texto especifico de variable string en el foro de PHP en Foros del Web. Holoa mirad si tengo una variable llamada $code por ejemplo es asi $code = sdsadadadasdadasdasda asda qweq qwewqeqw kk=asdasda asdadqwrqdassdsada y quiero recoger el valor ...
  #1 (permalink)  
Antiguo 28/05/2006, 07:29
 
Fecha de Ingreso: diciembre-2002
Ubicación: bilbao
Mensajes: 345
Antigüedad: 15 años
Puntos: 3
recoger texto especifico de variable string

Holoa mirad si tengo una variable llamada $code

por ejemplo es asi
$code = sdsadadadasdadasdasda asda qweq qwewqeqw kk=asdasda asdadqwrqdassdsada

y quiero recoger el valor kk=loke sea

como sería? graciass
__________________
aste nagusia
  #2 (permalink)  
Antiguo 28/05/2006, 09:33
 
Fecha de Ingreso: abril-2006
Mensajes: 62
Antigüedad: 11 años, 8 meses
Puntos: 0
funciones para operar con cadenas

Fijate en el manual la documentacion de las funciones strpos, stripos, substr, combinandolas podés resolverlo.
__________________
Guish
  #3 (permalink)  
Antiguo 28/05/2006, 09:49
Avatar de forecast  
Fecha de Ingreso: octubre-2004
Mensajes: 259
Antigüedad: 13 años, 2 meses
Puntos: 4
//coje todo lo que va despues de kk=
$parte=strstr($email, 'kk=');

// a lo mejor cojo de mas, debe de haber un separador que indica el final en este caso espacio en blanco
$final_cadena=" ";
//extraigo la posición final de lo que vale kk
$posicion_final_cadena=stripos($parte,$final_caden a)

//me quedo con lo que vale kk
$parte=substr($parte,0,$posicion_final);

Más o menos debe ir por aqi.
  #4 (permalink)  
Antiguo 28/05/2006, 10:08
 
Fecha de Ingreso: diciembre-2002
Ubicación: bilbao
Mensajes: 345
Antigüedad: 15 años
Puntos: 3
no me funciona

tengo esto:

Código PHP:
<?php
$url 
$_GET['url'];
$code file_get_contents($url);
$code htmlentities($code);
$parte=strstr($code'userid='); // ya que en el código html está asi userid=el_user_id&....
$final_cadena="&"// el separador es &
$posicion_final_cadena=strpos($parte,$final_cadena);
$parte=substr($parte,0,$posicion_final);
echo 
$parte;
?>
pues el echo $parte; no me saca nada, ningún valor

ayuda please!!
__________________
aste nagusia
  #5 (permalink)  
Antiguo 28/05/2006, 11:59
Avatar de forecast  
Fecha de Ingreso: octubre-2004
Mensajes: 259
Antigüedad: 13 años, 2 meses
Puntos: 4
La función strstr le tienes que pasar como carácter a buscar sólo un carácter:

http://es2.php.net/manual/es/function.strstr.php

Prueba a ver si le puedes poner antes un carácter separador.

Suerte.
  #6 (permalink)  
Antiguo 28/05/2006, 12:27
 
Fecha de Ingreso: diciembre-2002
Ubicación: bilbao
Mensajes: 345
Antigüedad: 15 años
Puntos: 3
no entiendo

No entiendo exactamente lo que quieres decirme :(
__________________
aste nagusia
  #7 (permalink)  
Antiguo 28/05/2006, 16:50
Avatar de forecast  
Fecha de Ingreso: octubre-2004
Mensajes: 259
Antigüedad: 13 años, 2 meses
Puntos: 4
en vez de llamar a la variable userid, llamala [email protected], por ejemplo...

Aquí tomamos la arroba como carácter separador la @

$parte=strstr($code, '@'); // ahora cogerás todo lo que va despues de la @

Ten en cuenta que ahora el substr tenrá como valor inicial el 1
$parte=substr($parte,1,$posicion_final);

Suerte
  #8 (permalink)  
Antiguo 29/05/2006, 02:18
 
Fecha de Ingreso: mayo-2006
Mensajes: 119
Antigüedad: 11 años, 6 meses
Puntos: 0
hola.. forecast,
una pregunta.. y si quisiera obtener lo que esta antes de @ como tendría que hacer?
  #9 (permalink)  
Antiguo 29/05/2006, 03:39
 
Fecha de Ingreso: diciembre-2002
Ubicación: bilbao
Mensajes: 345
Antigüedad: 15 años
Puntos: 3
el problema es que el html lo cojo de una web de youtube x lo k no pued asignar los valores que yo quiera, tiene que ser userid=... y coger todo el valor.

sabes como sería, gracias forecast
__________________
aste nagusia
  #10 (permalink)  
Antiguo 29/05/2006, 04:40
Avatar de forecast  
Fecha de Ingreso: octubre-2004
Mensajes: 259
Antigüedad: 13 años, 2 meses
Puntos: 4
Para ale_g

con $posicion_final=stripos($parte,'@') obtendrías la posición de la arroba

con $cadena=substr($cadena_entera,0,$posicion_final); deberías obtener todo lo que va antes de la arroba

Para Mikelon

Con la función explode puedes dividir una cadena a partir de otra cadena... http://es2.php.net/manual/es/function.explode.php

$url_vector=explode("userid=",$url);

ahora en $url_vector[0] tienes todo lo que va antes de "userid=" y en $url_vector[1] todo lo que va despues.

Con esto y lo que tienes de antes deberías de poder sacarlo.

Ya nos contarás.
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 01:06.