Я хочу сохранить этот массив json, который мой fb-login возвращает в базу данных. Однако я не знаю, как преобразовать это в строку, используя php.Как сохранить этот массив json в базе данных MYSQL
[{"id":"108124505876479","name":"Wakeboarding"},{"id":"112003352149145","name":"Bouldering"},{"id":"110008522357035","name":"Handball"}]
Я попробовал этот код ниже, но я даже не совсем уверен, больше ли, что возвращение фб Войти является массив JSON или нет.
$json = '{"id":"108124505876479","name":"Wakeboarding"},{"id":"112003352149145","name":"Bouldering"},{"id":"110008522357035","name":"Handball"}';
var_dump(json_decode($json));
Как я могу сохранить различные виды спорта в своей базе данных в строке?
Любая помощь будет высоко оценена.
Спасибо.
EDIT: верхняя часть возвращает NULL.
ВТОРОЙ EDIT:
if (array_key_exists('sports', $me)){
$json = '$me['sports']'; PROBLEM IS HERE
$data = json_decode($json, true);
$sports = array();
foreach ($data as $item) {
$sports[] = $item['name'];
}
$user->fb_sports = $sports;
}
Что именно проблема? [json_encode] (http://www.php.net/json_encode) или [serialize] (http://www.php.net/manual/en/function.serialize.php) должны работать нормально. – Peon
$ json должен иметь эти квадратные скобки вокруг снаружи - используйте http://jsoneditoronline.org/, чтобы проверить, действительно ли он JSON. –
И перекрестите пальцы и надейтесь, что вам никогда не придется запрашивать эти структурированные данные, сохраненные в виде строки. Потому что кому нужны нормальные формы? – AlexanderMP