Замените HTTPS на HTTPS XML

Мне нужно получить URL-адрес изображения из XML-файла, но мой сервер получил некоторые ошибки, поскольку этот URL-адрес использует https. Как я могу прочитать ссылку https и связать ее с http? Пожалуйста, помогите мне, я не понимаю программирования …

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 ];
}

введите описание изображения здесь

Спасибо!

-1

Решение

Как я уже упоминал в своем комментарии, используйте str_replace() за это.

Мой пример предполагает, что get() Метод возвращает строку с xml:

function api_lastfm( $artist, $api_key )
{
$data = get( "http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=" . urlencode( $artist ) . "&api_key={$api_key}", false, false, false, 6 );

// Replace all image urls using https to http
$data = str_replace('https://lastfm-img2', 'http://lastfm-img2', $data);

$data = xml2array($data);
return ( isset( $data[ 'artist' ][ 'image' ][ 4 ] ) && !empty( $data[ 'artist' ][ 'image' ][ 4 ] ) ) ? $data[ 'artist' ][ 'image' ][ 4 ] : $data[ 'artist' ][ 'image' ][ 3 ];
}

Это должно изменить все URL изображения с https на http. Это означает, что изображения должны быть доступны и без https.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]