Как получить значение ключа в api-ответе от сервера Json
Необходимо получить только номер телефона, чистый.
Казалось бы, что вопрос элементарный, но код, который я находил на просторах в интернете и который советовали мне тут не работает, хотя он выглядит правильно.
Как решали бы эту задачу все:
$response = file_get_contents('https://smsc.ru/sys/get.php?get_messages=1&login=Alex&psw=123&cnt=1&fmt=3');
$responseArray = json_decode($response, true);
$responseObject = json_decode($response);
echo 'Телефон: ' . $responseArray[0]['phone'] . ' ';
И получаю: Warning: Trying to access array offset on value of type null in C:\MAMP\htdocs\sms.php on line 12
И только при таком условии, сервер возвращает json :
$response = file_get_contents('https://smsc.ru/sys/get.php?get_messages=1&login=Alex&psw=123&cnt=1&fmt=3');
echo $response;
Получаю:
[{ "status": 1, "last_date": "20.07.2023 21:52:33", "last_timestamp": 1689882753, "flag": 32, "send_date": "20.07.2023 21:52:32", "send_timestamp": 1689882752, "phone": "79999999999", "cost": "3.25" }]
var_dump пишет, что я получаю таким образом string, поэтому и не могу обратиться к ключу, как в массиве это делают
Не могу понять почему так
А если попробовать
echo $response[0];
То выводит первую скобку "["
Источник: Stack Overflow на русском