Как получить значение ключа в массиве json PHP
Делаю api запрос к серверу, он мне возвращает ответ в json-формате. Ответ читает и выводится echo на экран, но мне необходимо получить только одно значение одного ключа в массиве - phone.
Приведу пример json:
[{ "status": 23, "last_date": "20.07.2023 09:59:16", "last_timestamp": 1689839956, "flag": 0, "err": 252, "send_date": "20.07.2023 09:59:16", "send_timestamp": 1689839956, "phone": "тут номер телефона будет", "cost": "0.00", "sender_id": "test", "status_name": "���������", "message": "тестовое сообщение", "country": "������", "operator": "������", "operator_orig": "���", "region": "������������� �������", "type": 0 }]
Т.е нужно просто вывести на экран не массив, а значение "phone".
Пробовал сделать, как советовали в комментариях:
$response = '[{ "status": 23, "last_date": "20.07.2023 09:59:16", "phone": 777}]';
$response = json_decode($response, true);
echo $response[0]['phone'];
Выдаёт ошибку:
Warning: Trying to access array offset on value of type null in C:\MAMP\htdocs\sms.php on line 11
Вот весь код:
$response = file_get_contents('https://smsc.ru/sys/get.php?get_messages=1&login=alex&psw=123&cnt=1&fmt=3');
$response = json_decode($response, true);
echo $response[0]['phone'];
Ответ возвращается в формате string от сервера
Источник: Stack Overflow на русском