Foros del Web » Programando para Internet » PHP »

No me muestra arreglo - array

Estas en el tema de No me muestra arreglo - array en el foro de PHP en Foros del Web. Noc porque, pero no se muestra nada cuando hago esto: Código PHP: <?php function  ordenar_fecha2 ( $a , $b ) {     return  strcmp ( $a ...
  #1 (permalink)  
Antiguo 06/09/2011, 18:57
Avatar de hackcrack  
Fecha de Ingreso: abril-2011
Mensajes: 331
Antigüedad: 13 años, 7 meses
Puntos: 9
Pregunta No me muestra arreglo - array

Noc porque, pero no se muestra nada cuando hago esto:

Código PHP:
<?php


function ordenar_fecha2($a,$b)
{
    return 
strcmp($a["campo_fecha"],$b["campo_fecha"]);
}

 
$fechas2 = array();

 
$fechas2['campo_fecha'][] = "2009-01-01";
 
$fechas2['campo_fecha'][] = "2009-02-11";
 
$fechas2['campo_fecha'][] = "2009-01-15";
 
$fechas2['campo_fecha'][] = "2009-02-28";
 
$fechas2['campo_fecha'][] = "2009-03-13";
 
$fechas2['campo_fecha'][] = "2009-04-09";
 
$fechas2['campo_fecha'][] = "2009-05-10";

usort($fechas2'ordenar_fecha2');
while (list(
$clave$valor) = each($fechas2)) {
    echo 
$valor['campo_fecha'];
}
?>
__________________
Los mejores juegos de PC gratis en ******
  #2 (permalink)  
Antiguo 06/09/2011, 19:08
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: No me muestra arreglo - array

Porque cuando lo recorres ya tiras la clave campo_fecha y esa clave ya no existe, por eso no te imprime nada... Deberías activar errores tipo notice. Así puedes recorrerlo:

Código PHP:
Ver original
  1. <?php
  2. function ordenar_fecha2($a, $b) {
  3.     return strcmp($a["campo_fecha"], $b["campo_fecha"]);
  4. }
  5.  
  6. $fechas2 = array();
  7.  
  8. $fechas2['campo_fecha'][] = "2009-01-01";
  9. $fechas2['campo_fecha'][] = "2009-02-11";
  10. $fechas2['campo_fecha'][] = "2009-01-15";
  11. $fechas2['campo_fecha'][] = "2009-02-28";
  12. $fechas2['campo_fecha'][] = "2009-03-13";
  13. $fechas2['campo_fecha'][] = "2009-04-09";
  14. $fechas2['campo_fecha'][] = "2009-05-10";
  15.  
  16. usort($fechas2, 'ordenar_fecha2');
  17.  
  18. foreach ($fechas2 as $fecha) {
  19.     foreach ($fecha as $f) {
  20.         echo $f . '<br />';
  21.     }
  22. }
  23. ?>

o con lo que llevas

Código PHP:
Ver original
  1. <?php
  2. function ordenar_fecha2($a, $b) {
  3.     return strcmp($a["campo_fecha"], $b["campo_fecha"]);
  4. }
  5.  
  6. $fechas2 = array();
  7.  
  8. $fechas2['campo_fecha'][] = "2009-01-01";
  9. $fechas2['campo_fecha'][] = "2009-02-11";
  10. $fechas2['campo_fecha'][] = "2009-01-15";
  11. $fechas2['campo_fecha'][] = "2009-02-28";
  12. $fechas2['campo_fecha'][] = "2009-03-13";
  13. $fechas2['campo_fecha'][] = "2009-04-09";
  14. $fechas2['campo_fecha'][] = "2009-05-10";
  15.  
  16. usort($fechas2, 'ordenar_fecha2');
  17. while (list ($clave, $valor) = each($fechas2)) {
  18.     foreach ($valor as $fecha) {
  19.         echo $fecha . '<br />';
  20.     }
  21. }
  22. ?>

para entender mejor tu error, mira lo que tiene la variable $valor, donde vez la clave campo_fecha???

Cita:
Array
(
[0] => 2009-01-01
[1] => 2009-02-11
[2] => 2009-01-15
[3] => 2009-02-28
[4] => 2009-03-13
[5] => 2009-04-09
[6] => 2009-05-10
)
Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 06/09/2011, 21:31
Avatar de hackcrack  
Fecha de Ingreso: abril-2011
Mensajes: 331
Antigüedad: 13 años, 7 meses
Puntos: 9
Respuesta: No me muestra arreglo - array

Huu el problema es que voy a tenes mas de un capo ademas de campo_fecha, entonces necesitaria manejar cada una por separado :$
EDIT
--------
Segun veo el problema es usort que me quita el nombre del campo "campo_fecha"
__________________
Los mejores juegos de PC gratis en ******

Última edición por hackcrack; 06/09/2011 a las 21:37
  #4 (permalink)  
Antiguo 06/09/2011, 22:11
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 4 meses
Puntos: 793
Respuesta: No me muestra arreglo - array

Muestra tu array completo saludos
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #5 (permalink)  
Antiguo 06/09/2011, 22:28
Avatar de hackcrack  
Fecha de Ingreso: abril-2011
Mensajes: 331
Antigüedad: 13 años, 7 meses
Puntos: 9
Respuesta: No me muestra arreglo - array

Mi array lo genero asi para q te des una idea masomenos:

Cita:
while ($row = mysql_fetch_array($resultado)) {
$entrada['id'][]=$row[id];
$entrada['nombre'][]=$row[nombre];
$entrada['cuerpo'][]=$row[cuerpo];
}
__________________
Los mejores juegos de PC gratis en ******

Etiquetas: muestra, arreglos
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 13:13.