Foros del Web » Programando para Internet » PHP »

Acceder a JSON con PHP

Estas en el tema de Acceder a JSON con PHP en el foro de PHP en Foros del Web. Hola chicos, Necesito acceder a un JSON que tiene la siguiente forma Código: {"tam": "4, "array":[{ "href": "link1", "src": "img1"}, { "href": "link2", "src": "img2"}]} ...
  #1 (permalink)  
Antiguo 02/03/2010, 12:52
 
Fecha de Ingreso: agosto-2008
Mensajes: 112
Antigüedad: 15 años, 8 meses
Puntos: 0
Acceder a JSON con PHP

Hola chicos,

Necesito acceder a un JSON que tiene la siguiente forma
Código:
{"tam": "4,
"array":[{
             "href": "link1",
             "src": "img1"},
             {
              "href": "link2",
               "src": "img2"}]}
No chequeis la sintaxis! es solo un ejemplo, el mio está bien sintacticamente. El problema es que ese array tiene unos 100 elementos, y quiero guardar en un array ese array y nada más.
Para guardarlo en un formato PHP he usado. json_decode y segun el manual para acceder a los parametros solo tengo que hacer
Código:
$sub_array =hacer($part,true);	
			 
			 $aux = $sub_array->{"array"};
Pero no me devuelve nada.

Si me resolveis esta duda mi siguiente pregunta será como coger subsecciones de ese array, es decir la posicion 50 a la 80.

Gracias!
  #2 (permalink)  
Antiguo 02/03/2010, 17:58
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: Acceder a JSON con PHP

Tal vez este ejemplo te sirva para darte cuenta

Código PHP:
<?php
# Son muy importantes las comillas dobles
$json '{
            "a": 1, 
            "b": 2, 
            "array": [10, 11, 12],
            "c": {
                    "algo": "este es el valor de algo",
                    "otro": "este es el valor de otro", 
                    "array": [20, 21, 22]
                 } 
         }'
;
         
$php json_decode($json);

# Para que te des una idea del objeto
echo '<pre>';
print_r($php);
echo 
'</pre>';

echo 
'<br />';

# Accedes a las posiciones
echo $php->{'array'}[0]; # imprime 10
echo '<br />';
echo 
$php->{'array'}[1]; # imprime 11
echo '<br />';
echo 
$php->{'array'}[2]; # imrpime 12
echo '<br />';

# Dentro del objeto "c"
echo $php->{'c'}->{'algo'}; # imprime "este es el valor de algo"
echo '<br />';
echo 
$php->{'c'}->{'otro'}; # imprime "este es el valor de otro"
echo '<br />';
echo 
$php->{'c'}->{'array'}[0]; # imprime 20
?>
__________________
HV Studio
Diseño y desarrollo web
  #3 (permalink)  
Antiguo 02/03/2010, 18:11
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Tema movido desde PHP orientado a objetos a PHP

Etiquetas: acceder, json
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:02.