dongpo7467 2017-06-17 23:30
浏览 42
已采纳

Php foreach echo(if / else)[重复]

This question already has an answer here:

It prints on the screen when it is correctly entered, but I do not want to do anything when it is entered incorrectly

How can I do that?

<?php
header('Content-type: text/html; charset=utf8');

$api_key = 'local';
$keyword = 'test';

$url = 'test.json' . $api_key . '&' .'keyword' .'=' . $GLOBALS['q'] ;

$open = file_get_contents($url);
$data = json_decode($open, true);

$istatistikler = $data['data'];
if ($data) {
foreach ( $istatistikler as $istatistik ){

    echo '<div class="right">';
    echo 'Oyun modu: ' . $istatistik['title'] . '<br />' .
    'Kazanma: ' . $istatistik['content'] . '<br />' .
    'Kazanma: ' . $istatistik['image'] . '<br />' .
    'Kazanma: ' . $istatistik['category'] . '<br />' .
    '<br />' .
    '<hr/>';
 $karakter_simge = 'http://google.com' . $istatistik['image'] . '';
 echo "<img src=".$karakter_simge." >" ;
 echo '</div>';
 }
  }
?>

Successful output

Failed output

Warning: file_get_contents(http://localhost/api/detail?X-Api-Key=local&keyword=a): failed to open stream: HTTP request failed! HTTP/1.1 406 Not Acceptable in /opt/lampp/htdocs/weather-master/php/php-api.php on line 10

"I do not want to print unsuccessfully"

thank you for your help!

</div>
  • 写回答

2条回答 默认 最新

  • dtwk6019 2017-06-17 23:38
    关注

    Change

    $open = file_get_contents($url);
    

    into

    $open = @file_get_contents($url);
    if ($open === false)
        die("wrong");
    

    The @ suppresses the error message. Using die() will abort the script completely with the given message.

    Alternatively, change the condition to !== false and wrap the rest of your "successful" code in its body:

    $open = @file_get_contents($url);
    if ($open !== false)
    {
        $data = json_decode...
        ...
        ...
    }
    

    I guess I overshot the goal here a little, but not even running into code that won't work properly without its data isn't a bad idea at all.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 phython如何实现以下功能?查找同一用户名的消费金额合并—
  • ¥15 ARIMA模型时间序列预测用pathon解决
  • ¥15 孟德尔随机化怎样画共定位分析图
  • ¥18 模拟电路问题解答有偿速度
  • ¥15 CST仿真别人的模型结果仿真结果S参数完全不对
  • ¥15 误删注册表文件致win10无法开启
  • ¥15 请问在阿里云服务器中怎么利用数据库制作网站
  • ¥60 ESP32怎么烧录自启动程序,怎么查看客户esp32板子上程序及烧录地址
  • ¥50 html2canvas超出滚动条不显示
  • ¥15 java业务性能问题求解(sql,业务设计相关)