Jump to content

Recommended Posts

Hey PHP Homies!

I'm trying to make this JSON into PHP so I can send it to an API using curl.

I have no problem with the first part of it, but I'm getting totally zonked on the cart contents where the items are in their own object.

 

{
   "store_id":"test",
   "api_token":"test",
   "checkout_id":"test",
   "txn_total":"4.00",
   "environment":"qa",
   "action":"preload",
   "cart":{
      "items":[
         {
            "description":"item 1",
            "unit_cost":"1.00",
            "quantity":"3"
         },
         {
            "description":"item 2",
            "unit_cost":"1.00",
            "quantity":"1"
         }
      ],
      "subtotal":"4.00"
   }
}

 

What is the best way to represent something like this in PHP and then convert it to JSON format to send out to CURL?

Thanks in advance!

Edited by TrialByFire
Link to comment
https://forums.phpfreaks.com/topic/328340-how-to-represent-this-json-data-as-php/
Share on other sites

  • TrialByFire changed the title to How to represent this JSON data as PHP?

JSON is a data structure converted to string format to make storage and transfer easier.

Define your json as a a PHP string ...

$json_str = '
            {
               "store_id":"test",
               "api_token":"test",
               "checkout_id":"test",
               "txn_total":"4.00",
               "environment":"qa",
               "action":"preload",
               "cart":{
                  "items":[
                     {
                        "description":"item 1",
                        "unit_cost":"1.00",
                        "quantity":"3"
                     },
                     {
                        "description":"item 2",
                        "unit_cost":"1.00",
                        "quantity":"1"
                     }
                  ],
                  "subtotal":"4.00"
               }
            }
            ';

Provided it is the correct format you use this in the api call.

To use the data in PHP you need to decode it with json_decode()...

$data = json_decode($json_str, true);                       # the second parameter "true" converts it to an array.
                                                            # without it you get a php object.

// view the resulting array data
echo '<pre>' . print_r($data, 1) . '</pre>'; 

... which gives us ...

Array
(
    [store_id] => test
    [api_token] => test
    [checkout_id] => test
    [txn_total] => 4.00
    [environment] => qa
    [action] => preload
    [cart] => Array
        (
            [items] => Array
                (
                    [0] => Array
                        (
                            [description] => item 1
                            [unit_cost] => 1.00
                            [quantity] => 3
                        )

                    [1] => Array
                        (
                            [description] => item 2
                            [unit_cost] => 1.00
                            [quantity] => 1
                        )

                )

            [subtotal] => 4.00
        )

)

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.