За последние 24 часа нас посетили 62084 программиста и 1596 роботов. Сейчас ищут 817 программистов ...

Проверить получен ли файл json

Тема в разделе "PHP для новичков", создана пользователем koresh, 11 июл 2019.

  1. koresh

    koresh Новичок

    С нами с:
    11 июл 2019
    Сообщения:
    19
    Симпатии:
    0
    Здравствуйте!
    Подскажите как проверить получен ли файл json с внешнего ресурса (сайта).

    Делаю такой запрос:
    PHP:
    1. $test = file_get_contents("https://example.com/name.json");
    2.  
    3. if ( ) {
    4.     // код если файл получен
    5. }
    Как правильно проверить что файл получен?
     
  2. Artur_hopf

    Artur_hopf Старожил

    С нами с:
    7 май 2018
    Сообщения:
    2.264
    Симпатии:
    405
    PHP:
    1. $test = file_get_contents("https://example.com/name.json");
    2.  
    3. print_r($test); //покажите что тут внутри
     
  3. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.815
    Симпатии:
    1.332
    Адрес:
    Лень
  4. koresh

    koresh Новичок

    С нами с:
    11 июл 2019
    Сообщения:
    19
    Симпатии:
    0
    Вот так правильно?
    PHP:
    1. $json = file_get_contents("https://example.com/name.json");
    2.  
    3. $test = json_decode($json);
    4.  
    5. if ( json_last_error () == JSON_ERROR_NONE ) {
    6.     // код если файл получен
    7. }
     
  5. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.598
    Симпатии:
    1.764
    Код (Text):
    1.  
    2. $test = @file_get_contents("https://example.com/name.json");
    3.  
    4. if ($test !== false) {
    5.    // код если файл получен
    6. }
    Редкий случай допустимого, на мой взгляд, использования собаки.
     
    acso и koresh нравится это.
  6. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.815
    Симпатии:
    1.332
    Адрес:
    Лень
    +
    --- Добавлено ---
    --- Добавлено ---
    Там в try catch можно обрамить
     
  7. koresh

    koresh Новичок

    С нами с:
    11 июл 2019
    Сообщения:
    19
    Симпатии:
    0
    Спасибо! Работает. Ошибка подавляется, если её спровоцировать.