In this article I will write about working with JSON. JSON stands for JavaScript Object Notation. It is a great way to send objects back and forth through client-server and also to create API’s that return JSON when information is requested. Lets look at an object in javascript.
var object = { self : {name:"customer1",job:"cashier"}, todo :"jsonobject", names : [{employ:"work",happy:true,work:"program"}, {employ:"job",happy:false,work:"intro"}] };
This object, called object has a couple variables and an array names. Now lets see this object in JSON format.
{"self":{"name":"customer1","job":"cashier"}, "todo":"jsonobject", "names":[{"employ":"work","happy":true,"work":"program"}, {"employ":"job","happy":false,"work":"intro"}]}
in javascript to turn an object into JSON you use the JSON.Stringify method
JSON.stringify(object);
And to turn JSON into and Object you use JSON.Parse method
var object = JSON.parse(json);
Now to work with JSON in php you can make objects in php and then use json_encode to turn the object into JSON like this
<?php $myObj = new \stdClass(); $myObj->name = "John"; $myObj->age = 30; $myObj->city = "New York"; $myArray = array(); for($i = 0;$i < 10;$i++){ $myArray[$i] ="hello world".$i; } $myObj->hello = $myArray; $myJSON = json_encode($myObj); echo $myJSON; ?>
Now the variable $myJSON will look like this after you encode it
{"name":"John", "age":30, "city":"New York", "hello":["hello world0","hello world1", "hello world2","hello world3","hello world4", "hello world5","hello world6","hello world7", "hello world8","hello world9"]}
and if you are sending a JSON object to a php script using JSON.stringify you can grab the object in php with something like this using json-decode
$obj = json_decode($_POST["x"], false);
And that is pretty much the basics for using JSON in javascript and php. One note i was looking around and it appears that you are not supposed to send functions through JSON but there is a way that is not consistent so it shouldnt actually be done, as far as i know. I hope you enjoyed this article. Untill next time 🙂
Amazon Fire HD 10 tablet (newest model) built for relaxation, 10.1" vibrant Full HD screen, octa-core processor, 3 GB RAM, 64 GB, Black
$78.74 (as of January 22, 2025 08:46 GMT -05:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)150 PCS Romance Book Stickers for Kindle, Holographic Bookish Sticker Pack Reading Booktok Glitter Vinyl Decals for Laptop Ebook Readers Water Bottles Journal Scrapbook Waterproof
$9.99 (as of January 22, 2025 08:46 GMT -05:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)TP-Link AX3000 WiFi 6 Router – 802.11ax Wireless Router, Gigabit, Dual Band Internet Router, VPN Router, OneMesh Compatible (Archer AX55)
$79.99 (as of January 22, 2025 08:46 GMT -05:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Mac Book Pro Charger - 118W USB C Charger Fast Charger Compatible with USB C Port MacBook pro/Air, M1 M2 M3 M4, ipad Pro, Samsung Galaxy and All USB C Device, Include Charge Cable
$26.83 (as of January 22, 2025 08:46 GMT -05:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Charger for Lenovo Laptop Computer 65W 45W Round Tip Power Supply AC Adapter for Lenovo IdeaPad 330-14, 330-15, 330-17, 510-15, 330s-14, 330s-15 Lenovo Flex 6-14 Laptop Charger
$9.90 (as of January 22, 2025 08:46 GMT -05:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Author: John Rowan
I am a Senior Android Engineer and I love everything to do with computers. My specialty is Android programming but I actually love to code in any language specifically learning new things.