Мне нужно получить URL-адрес изображения из XML-файла, но на моем сервере появились некоторые ошибки, потому что этот url использует https. Как я могу прочитать ссылку https и передать ее http? Пожалуйста, помогите мне, я не понимаю, программирование ...Заменить HTTPS на HTTPS XML
function api_lastfm($artist, $api_key) {
$data = xml2array(get("http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=" . urlencode($artist) . "&api_key={$api_key}", false, false, false, 6));
return (isset($data[ 'artist' ][ 'image' ][ 4 ]) && !empty($data[ 'artist' ][ 'image' ][ 4 ])) ? $data[ 'artist' ][ 'image' ][ 4 ] : $data[ 'artist' ][ 'image' ][ 3 ];
}
Спасибо!
Прежде чем преобразовать XML-ответ (который, вероятно, является только строкой), используйте функцию PHP [str_replace] (http://php.net/manual/en/function.str-replace.php). Например: '$ string = str_replace ('https: // lastfm-img2', 'http: // lastfm-img2', $ string)'. Но вы уверены, что проблема в том, что это https-url? –
В моем журнале сервера отображается это сообщение об ошибке: «Запрос CURL» https://lastfm-img2.akamaized.net/i/u/549d31e77f614f269ca04a6bc156bda2.png «failed! LOG: проблема с сертификатом SSL: невозможно получить сертификат локального эмитента». Поэтому я хотел бы заменить https на http. Пожалуйста, как мой код будет? Где я помещаю эту команду str_replace? Благодарю. –
Я написал ответ о том, где его добавить. Это предположение, так как я не знаю, как вернется метод 'get()'. –