Я кодировал запрос отправки cURL для входа в систему, чтобы получить токен. Сценарий предназначен для удаленного входа в систему, получения маркера через preg_match, а затем отправки запроса GET на другой URL, используя токен preg_matched.Переменная исчезающая после добавления текста
Товарный знак представлен в виде строки, например. ABCDEFGHIJK. Во втором запросе GET токен разрешен как: Разрешающая способность: ABCDEFGHIJK
Однако после получения маркера с первого запроса на отправку и добавления в слова «Ответчик авторизации» токен исчезает.
<?php
//Login in Remotely
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'URL');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'POST DATA');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // On dev server only!
$result = curl_exec($ch);
curl_close($ch);
//Parse Token
preg_match('#"phoenixAccessToken":"(.*)","phoenixExpiresIn#',$result,$matches);
echo $matches[1]; //This returns ABCDEFGHIJK
//Write authorization (Token returns a 0 now.)
$authorization = 'Authorization Bearer: ' & $matches[1];
echo $authorization; //This returns a 0
?>
эхо $ матчей [1] возвращает маркер требуется прекрасно, но работает эхо 'Authorization Носителем:' & $ матчей [1]; возвращает 0 вместо авторизационного носителя: ABCDEFGHIJK.
Почему это так? Нужно ли вообще фиксировать переменную так, чтобы она была статичной?
Спасибо!
Вы должны использовать "." вместо «&» при конкатенации строки для переменной $ authorization. – daker
Omgosh не может поверить, что я даже не понял, что правильно :(Спасибо за вашу помощь! – user2587774