Pregunta

Estoy teniendo un problema con mi función de explotar en PHP.

Me estoy tirando de una cadena a partir de la base de datos de la siguiente manera:

  column_name
  0,2000,0,3000,1000,7000,1000,0,0,0

Después de tirar esto en un objeto llamado $ conjunto de registros que estoy usando la función de hacer explotar una matriz fuera de él ... de la siguiente manera:

  $array = explode(",",$recordset->column_name)

Sin embargo, de alguna forma, la matriz no es como lo que esperaría ...

Esto es lo que me pasa cuando eco de la matriz:

     Array
     (
     [0] => 0
     [1] => 0
     [2] => 0
     [3] => 3000
     [4] => 7000
     [5] => 2000
     [6] => 1000
     [7] => 1000
     [8] => 0
     [9] => 0
     )

Como se puede ver, no estoy recibiendo los valores como debería ... Sin embargo, si mi cadena a partir de la base de datos es corta, por ejemplo:

    1000,0,1200,0

La lógica anterior funciona bien ..

No estoy seguro de cómo depurar o resolver este problema ..

Por favor, ayuda?

¿Fue útil?

Solución

El problema no es con explode(). El problema es la cadena que está tirando de la base de datos. Si esta cadena se concatena alguna manera, me gustaría empezar a buscar allí. Si no es así, comprobar la cadena en su base de datos, o verificar la consulta que accede a la tabla.

Tome un vistazo a la documentación de GROUP_CONCAT . Se puede especificar el orden en la sintaxis.

Otros consejos

El problema no se explota, como se puede ver en este teclado explotar está trabajando correctamente.

Comprobar los valores procedentes de su base de datos, y asegurarse de que están en el orden que usted espera.

Editar ¿Cómo es este valor se genera en el PP? ¿Es un valor estático en un campo, o está siendo creado a partir de la concatenación?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top