Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Cadenas de texto(o eso creo)

Estas en el tema de Cadenas de texto(o eso creo) en el foro de PHP en Foros del Web. Muy buenas a todos. Tengo una tabla [Datatype: TEXT]en la que está rellena con: 0 0 0 0 0 0 0 0 0 0 0 ...
  #1 (permalink)  
Antiguo 09/05/2014, 13:11
Avatar de Thejuanjo  
Fecha de Ingreso: mayo-2014
Mensajes: 28
Antigüedad: 9 años, 11 meses
Puntos: 2
Pregunta Cadenas de texto(o eso creo)

Muy buenas a todos.
Tengo una tabla [Datatype: TEXT]en la que está rellena con: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 84921 0 0 0 0 0 0 0 0 0 0 0 0 0 80 0 0 0

Necesito extraer el 84921 de la tabla, sólo necesito eso, he buscado y me salen como funciones de strings, pero no se usarlas, porque no me sale lo que busco.

Lo que yo busco es el código PHP que extrae el número que está en la posición del 84921, ya que este número no es fijo y quiero que lo extraiga automáticamente el número de esa posición.

En definitiva, yo lo que quiero es sacar número X por su posición en la cadena.

Por favor si alguien me puede escribir el código, que por mucho que busque no lo encuentro.


PD: 84921 (posición en la cadena 28); para aclarar(por si no me explico bien), quiero extraer el nº de la posición 28 en la cadena.
por ejemplo supongamos que:

$codigo = "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 84921 0 0 0 0 0 0 0 0 0 0 0 0 0 80 0 0 0" ;

Encontré algo parecido a lo que yo busco aquí buscando, use esto, pero podría darme un error; explico.
Codigo encontrado:
Cita:
<?php

$texto="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 84921 0 0 0 0 0 0 0 0 0 0 0 0 0 80 0 0 0 ";
echo substr($texto, 54, 5);
?>
Lo que me hace mostrar 84921.

Temores de error(si usara este código:
- Que el número sea más largo y lo corte, sería posible adaptarlo?
- Que exista otros números antes del número 84921.

Última edición por Thejuanjo; 09/05/2014 a las 13:38
  #2 (permalink)  
Antiguo 09/05/2014, 13:52
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Cadenas de texto(o eso creo)

¿Qué condiciones debe tener el número que que quieres extraer? Ya que dices que la posición no es fija, alguna condición o patrón debería cumplirse para sugerirte algo.
  #3 (permalink)  
Antiguo 09/05/2014, 14:03
Avatar de Thejuanjo  
Fecha de Ingreso: mayo-2014
Mensajes: 28
Antigüedad: 9 años, 11 meses
Puntos: 2
Respuesta: Cadenas de texto(o eso creo)

No, no cambia de posición siempre tiene la misma posición, si antes te confundí con lo de posición 28, es por que el número 84921, está donde debería estar el 0 nº 28, sin contar espacios etc. En fin que no cambia la posición.

PD:

Temores de error(si usara este código:
- Que el número sea más largo y lo corte, sería posible adaptarlo?

ejemplo:

<?php

$texto="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 849212 0 0 0 0 0 0 0 0 0 0 0 0 0 80 0 0 0 ";
echo substr($texto, 54, 5);
?>

MOSTRARIA: 84921

- Que exista otros números antes del número 84921.

ejemplo:

<?php

$texto="0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 84921 0 0 0 0 0 0 0 0 0 0 0 0 0 80 0 0 0 ";
echo substr($texto, 54, 5);
?>

MOSTRARIA: 8492
  #4 (permalink)  
Antiguo 09/05/2014, 14:12
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 1 mes
Puntos: 1146
Respuesta: Cadenas de texto(o eso creo)

si simpre tiene ese formato y se encuentra en la misma posicion, tal vez te sea mas facil hacer un explode

por ejemplo
Código PHP:
Ver original
  1. $v = '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 84921 0 0 0 0 0 0 0 0 0 0 0 0 0 80 0 0 0';
  2.     $v1 = explode(' ',$v);
  3.     echo $v1['27'];
  #5 (permalink)  
Antiguo 09/05/2014, 14:17
Avatar de Thejuanjo  
Fecha de Ingreso: mayo-2014
Mensajes: 28
Antigüedad: 9 años, 11 meses
Puntos: 2
Respuesta: Cadenas de texto(o eso creo)

Cita:
Iniciado por ArturoGallegos Ver Mensaje
si simpre tiene ese formato y se encuentra en la misma posicion, tal vez te sea mas facil hacer un explode

por ejemplo
Código PHP:
Ver original
  1. $v = '0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 84921 0 0 0 0 0 0 0 0 0 0 0 0 0 80 0 0 0';
  2.     $v1 = explode(' ',$v);
  3.     echo $v1['27'];
LOL, justo lo que andaba buscando muchiiiiiiisiiiimas gracias!!!!!!

Tio!!! Eres un crack!!!!!

Etiquetas: cadenas, tabla
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 16:22.