Задать вопрос
@reter24

Не работает яндекс ссылка прямая?

Реализовал таким образом, по итогу $json даже не выводит никакой информации, но если проверить $final_url, то формирование ссылки идет нормально и вручную зайти все работает. подскажите как исправить?

<?php
 $base_url = 'https://cloud-api.yandex.net/v1/disk/public/resources/download?';

/**
 * Ссылка на файл YaDisk
 */
$link = 'https://disk.yandex.ru/i/5nxjt-aoS96ESw';


/**
 * Формирование API ссылки
 */
$final_url = $base_url . 'public_key=' . $link;


/**
 * Получение данных ответа
 */
$ch = curl_init($final_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_exec($ch);

$http_code = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

  $json = file_get_contents($final_url);
    $linkFile = $json->href;

        echo '<pre>';
        print_r($linkFile);
        echo '</pre>';
  • Вопрос задан
  • 192 просмотра
Подписаться 1 Простой 9 комментариев
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Skillbox
    Профессия PHP-разработчик с нуля до PRO
    7 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
у тебя file_get_contents возвращает строку, а ты к ней обращаешься как к объекту. Добавь json_decode:
$json = json_decode(file_get_contents($final_url));
$linkFile = $json->href;

ну и curl блок можно удалить целиком, он тут ни на что не влияет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы