Как получить объект json в php foreach с оператором if-else?

я хочу настроить изображение, но получил ошибку в строке 8

<?php
$url = "https://dog.ceo/api/breeds/image/random";
$json = file_get_content($url);
$obj = json_decode($json, TRUE);

foreach($obj as $key) if
(
echo <img src='$key['message']'/>

else

echo <img src='not_found.png'/>
);
?>

какое решение?

Что вы на самом деле пытаетесь проверить с помощью if? Не ясно

ADyson 15.05.2022 12:46

Здесь также есть множество синтаксических ошибок ... строки нуждаются в кавычках вокруг них, что является наиболее очевидным. Убедитесь, что вы понимаете такие основы, прежде чем идти слишком далеко

ADyson 15.05.2022 12:48

Используйте достойную IDE с поддержкой PHP, которая может указывать на ошибки. Включите отчет об ошибках/отображение (Как мне получить ошибки PHP для отображения?). Прочтите руководство: file_get_contents, если, эхо

brombeer 15.05.2022 12:58

Этот API возвращает довольно простой JSON, не нужно foreach над ним

brombeer 15.05.2022 13:00

это только пример API, который я хочу использовать на другом API, который имеет много json

johan simanjuntak 15.05.2022 15:07

Что ж, вы должны привести нам пример того, на кого вы действительно хотите нацелиться, а не другого… мы не умеем читать мысли!

ADyson 15.05.2022 15:46

я собираюсь использовать для этого API, может быть, вы можете помочь, я все еще запутался при использовании ошибки foreach

johan simanjuntak 15.05.2022 18:06

Итак, какие данные вы хотите получить от него? Вы должны прочитать stackoverflow.com/questions/29308898/…, чтобы получить общее представление и изучить концепции, необходимые для получения любых таких данных.

ADyson 15.05.2022 19:14
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
8
27
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам не нужен цикл foreach, так как API возвращает обычный json. Возможно, вы хотели получить такой результат.

$url = "https://dog.ceo/api/breeds/image/random";
$curl = curl_init();
curl_setopt_array($curl, array(
    CURLOPT_URL => 'https://dog.ceo/api/breeds/image/random',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => 'GET',
));
$response = curl_exec($curl);
curl_close($curl);
$response = json_decode($response, TRUE); 
 if (!empty($response['message'])){
     echo "<img src='{$response['message']}'/>";
 }else{
     echo "<img src='not_found.png'/>";
 }

вы используете cURL, который я все еще изучаю, спасибо, мне нужно только в части «если»

johan simanjuntak 15.05.2022 15:25

Другие вопросы по теме