Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Generar un obj array

Estas en el tema de Generar un obj array en el foro de PHP en Foros del Web. Buenas, estoy empezando a trabajar con la Api de MercadoPago , pero quería hacer un intento de carrito de compras. Pero para eso primero quería ...
  #1 (permalink)  
Antiguo 02/04/2016, 14:47
 
Fecha de Ingreso: junio-2008
Mensajes: 45
Antigüedad: 15 años, 10 meses
Puntos: 0
Generar un obj array

Buenas, estoy empezando a trabajar con la Api de MercadoPago , pero quería hacer un intento de carrito de compras. Pero para eso primero quería generar las preferencias de los datos.

Esto es lo que tengo que generar :

Código PHP:
$preference_data = array(
    
"items" => array(
        array(
            
"id" => "item-ID-1234",
            
"title" => "item",
            
"quantity" => 1,
            
"currency_id" => "ARS"// Available currencies at: https://api.mercadopago.com/currencies
            
"picture_url" => "https://www.mercadopago.com/org-img/MP3/home/logomp3.gif",
            
"description" => "Item description",
            
"category_id" => "art"// Available categories at https://api.mercadopago.com/item_categories
            
"unit_price" => 10.00
        
),
        array(
            
"id" => "item-ID-12343",
            
"title" => "item2",
            
"quantity" => 1,
            
"currency_id" => "ARS"// Available currencies at: https://api.mercadopago.com/currencies
            
"unit_price" => 10.00
        
)

    ),
    
"payer" => array(
        array(
            
"name" => "user-name",
            
"surname" => "user-surname",
            
"email" => "[email protected]",
            
"date_created" => "2015-06-02T12:58:41.425-04:00",
            
"phone" => array(
                
"area_code" => "11",
                
"number" => "4444-4444"
            
),
            
"identification" => array(
                
"type" => "DNI",
                
"number" => "12345678"
            
),
            
"address" => array(
                
"street_name" => "Street",
                
"street_number" => 123,
                
"zip_code" => "5700"
            

        )
    ),
); 
Yo hice un intento fallido, pero cercano ... Que seria este codigo :

Código PHP:
$general = array();
$itemstodos = (object) array( "items" => array() );
$item = (object) array(
    
"id" => "item-ID-1234",
    
"title" => "Multicolor kite",
    
"quantity" => 1,
    
"currency_id" => "ARS"// Available currencies at: https://api.mercadopago.com/currencies
    
"picture_url" => "https://www.mercadopago.com/org-img/MP3/home/logomp3.gif",
    
"description" => "Item description",
    
"category_id" => "art"// Available categories at https://api.mercadopago.com/item_categories
    
"unit_price" => 10.00
    
);

$payertodos = (object) array( "payer" => array() );

$payer = (object) array(
            
"name" => "user-name",
            
"surname" => "user-surname",
            
"email" => "[email protected]",
            
"date_created" => "2015-06-02T12:58:41.425-04:00",
            
"phone" => array(
                
"area_code" => "11",
                
"number" => "4444-4444"
            
),
            
"identification" => array(
                
"type" => "DNI",
                
"number" => "12345678"
            
),
            
"address" => array(
                
"street_name" => "Street",
                
"street_number" => 123,
                
"zip_code" => "5700"
            

        );

array_push($itemstodos->items$item);
array_push($general$itemstodos);
array_push($payertodos->payer$payer);
array_push($general$payertodos);
print_r($general); 

No se si alguien me puede ayudar xD o decirme una forma mas bonita de hacerlo.

Última edición por WebHelp; 02/04/2016 a las 15:07
  #2 (permalink)  
Antiguo 02/04/2016, 17:48
 
Fecha de Ingreso: junio-2008
Mensajes: 45
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Generar un obj array

Ya logre lo que buscaba :)

Código PHP:
Ver original
  1. $items = array();
  2. $payers = array();
  3.  
  4.  
  5. $item = array (
  6.     "id" => "item-ID-1234",
  7.     "title" => "Multicolor kite",
  8.     "quantity" => 1,
  9.     "currency_id" => "ARS", // Available currencies at: https://api.mercadopago.com/currencies
  10.     "picture_url" => "https://www.mercadopago.com/org-img/MP3/home/logomp3.gif",
  11.     "description" => "Item description",
  12.     "category_id" => "art", // Available categories at https://api.mercadopago.com/item_categories
  13.     "unit_price" => 10.00
  14. );
  15.  
  16. $payer = array (
  17.     "name" => "user-name",
  18.     "surname" => "user-surname",
  19.     "email" => "[email protected]",
  20.     "date_created" => "2015-06-02T12:58:41.425-04:00",
  21.     "phone" => array(
  22.         "area_code" => "11",
  23.         "number" => "4444-4444"
  24.     ),
  25.     "identification" => array(
  26.         "type" => "DNI",
  27.         "number" => "12345678"
  28.     ),
  29.     "address" => array(
  30.         "street_name" => "Street",
  31.         "street_number" => 123,
  32.         "zip_code" => "5700"
  33.     )
  34. );
  35.  
  36. $items [] = $item;
  37. $payers [] = $payer;
  38.  
  39. $data = array(
  40.     "items" => $items,
  41.     "payer" => $payers
  42.     );

Etiquetas: Ninguno
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 17:02.