как написать json-файл в качестве источника данных в php?

У меня есть некоторые данные, подобные этому

"name": "abc", "adr": "bcd", "partners": { "101": { "name": "xyz.com", "prices": { "1001": { "description": "Single Room", "amount": 125, "from": "2012-10-12", "to": "2012-10-13" }, "1002": { "description": "Double Room", "amount": 139, "from": "2012-10-12", "to": "2012-10-13" } } 

Теперь я должен написать json со всеми этими данными и использовать его в качестве источника данных.

Как мне это сделать ?

Данные, опубликованные вами, недействительны JSON. Он пропускает некоторые окружающие и заканчивающиеся скобки.

Хорошо, давайте исправим это … и сохраним его как data.json :

 { "name": "abc", "adr": "bcd", "partners": { "101": { "name": "xyz.com", "prices": { "1001": { "description": "SingleRoom", "amount": 125, "from": "2012-10-12", "to": "2012-10-13" }, "1002": { "description": "DoubleRoom", "amount": 139, "from": "2012-10-12", "to": "2012-10-13" } } } } } 

Чтобы получить доступ к JSON с помощью PHP, вы можете просто загрузить файл и преобразовать JSON в массив.

 <?php $jsonFile = "data.json" $json = file_get_contents($jsonFile); $data = json_decode($json, TRUE); echo "<pre>"; print_r($data); echo "</pre>"; ?> 

PHP-скрипт для создания файла, содержащего эти данные, как json

 // the data you need $phpData = [ "name" => "abc", "adr" => "bcd", "partners" => [ "101" => [ "name" => "xyz.com", "prices" => [ "1001" => [ "description" => "Single Room", "amount" => 125, "from" => "2012-10-12", "to" => "2012-10-13", ], "1002" => [ "description" => "Double Room", "amount" => 139, "from" => "2012-10-12", "to" => "2012-10-13", ] ] ] ] ]; // json_encode() that data to a string $jsonData = json_encode($phpData); // write that string to your file file_put_contents('myJsonFile.json', $jsonData); 

И использовать его как источник данных

 $myData = json_decode( file_get_contents('myJsonFile.json') );