I need some help please.
I have this array in php:
Array (
[0] => Array (
[name] => Ville1
[description] => adresse1
[lng] => -10.35
[lat] => 29.1833
)
[1] => Array (
[name] => Ville2
[description] => description2
[lng] => 12.61667
[lat] => 38.3833
)
)
How can I transform it in this format and add in a objet in javascript ?
locations: {
"0": {
lat: "48.3833",
lng: "12.61667",
name: "Ville1",
description: "adresse1"
},
"1": {
lat: "29.1833",
lng: "-10.35",
name: "Ville2",
description: "adresse2"
}
},
Thanks and sorry for the english..
>Solution :
The solution is simple. The only think you have to do, is to pass the array to the php function json_encode
.
This will convert automatically your array to JSON.
The same way, you could also convert PHP Objects to JSON.
Finally, there’s also another function of PHP with the name json_decode
that does the opposite. If you have a JSON string, you can convert it to PHP Array or Object.
The only difference, is that when you convert JSON objects, in PHP you get stdClass
instances.
<?php
$array = [
[
"name" => "Ville1",
"description" => "adresse1",
"lng" => -10.35,
"lat" => 29.1833
],
[
"name" => "Ville2",
"description" => "description2",
"lng" => 12.61667,
"lat" => 38.3833
]
];
$jsonStructure = json_encode($array);
?>
<script>
var locations = <?php echo $jsonStructure; ?>;
// The following line should print in your browser console
// the word: Ville1
console.log(locations[0].name);
</script>