file_get_contents изменить "&" на "&" - PullRequest
0 голосов
/ 21 сентября 2018

Я хочу получить json из URL-адреса с file_get_contents, но он заменит & на &amp, и это не сработало таким образом.проблема

$url="https://api.kavenegar.com/v1/asdkljsadlkjsd/sms/send.json?receptor=09148523669&sender=100005252&message=testing";


$json = file_get_contents($url);
echo "1";
var_dump($json);

и вот результат:

(!) Предупреждение: file_get_contents (https://api.kavenegar.com/v1/asdkljsadlkjsd/sms/send.json?receptor=09148523669&sender=100005252&message=testing): не удалось открыть поток: HTTP-запросСбой! HTTP / 1.1 400 Неверный запрос в C: \ wamp64 \ www \ te \ func \ testjson.php в строке 22 * ​​1016 *

Конечно, stackoverflow удаляет &amp из URL-адреса результата.

Ответы [ 2 ]

0 голосов
/ 22 сентября 2018

это ответ:

$url = 'https://example.url?';

// http_build_query builds the query from an array
$query_array = array (
    'search' => $string,
    'from' => $from,
    'to' => $to,
    'format' => 'json'
);

$query = http_build_query($query_array);
$result = file_get_contents($url . '&' . $query);
0 голосов
/ 21 сентября 2018

Кажется, проблема в том, что он возвращает код ошибки.Если это так, см .: Игнорирование ошибок в file_get_contents HTTP-оболочке?

$url="https://api.kavenegar.com/v1/asdkljsadlkjsd/sms/send.json?receptor=09148523669&sender=100005252&message=testing";

$context = stream_context_create(array('http' => array('ignore_errors' => true),));
$json = file_get_contents($url, false, $context);

echo $json;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...