2016-09-08 4 views
1

Вещь, которую я хочу сделать, это получить данные (номер телефона) из MySQL и сохранить их в массиве, который определен в формате файла .JSON!Как хранить данные MySQL в формате .JSON?

Я не знаю ни одного JSON, поэтому у меня возникают проблемы. Функция использует administrators.json файл, чтобы получить номера телефонов, которые на самом деле написано в массиве, например:

[ 
    { 
    "phone_number": "+1555555555", 
    "name": "Foo" 
    } 
] 

Но я не хочу статические значения, я хочу, чтобы получить номер телефона из MySQL, и затем передайте это число этому массиву JSON. Как я могу это сделать?

Функция, которая использует этот administrators.json выглядит следующим образом:

private function _notificationRecipients() 
    { 
     $adminsFile = base_path() . 
      DIRECTORY_SEPARATOR . 
      'config' . DIRECTORY_SEPARATOR . 
      'administrators.json'; 
     try { 
      $adminsFileContents = \File::get($adminsFile); 

      return json_decode($adminsFileContents); 
     } catch (FileNotFoundException $e) { 
      Log::error(
       'Could not find ' . 
       $adminsFile . 
       ' to notify admins through SMS' 
      ); 
      return []; 
     } 
    } 

ответ

3

Существует функция на PHP называется json_encode, который в основном делает работу за вас. Затем вы можете записать результат в файл.

+0

, но файл имеет формат .json! Могу ли я запустить php-код? Должен ли я изменить .json на .php? – Wocugon

+0

Я думал, вы просто хотели создать JSON из данных, полученных из базы данных? Или я ошибаюсь. –

+0

@ThesK вы не запускаете код в json-файле, вы читаете/записываете json-файл с PHP. json_encode преобразует массив PHP в строку JSON. json_decode преобразует строку JSON в массив PHP. – Devon

Смежные вопросы