正在努力发现PHP7与此代码不兼容

正在努力发现PHP7与此代码不兼容,php,json,php-7,Php,Json,Php 7,我已经通过PHP7兼容性检查程序运行了这段代码,它不会返回任何错误 但是,当我将服务器从PHP5.6切换到PHP7时,这段代码会自动停止工作。它没有输出啤酒抽头列表,而是什么也不输出 我错过了什么?很明显,有什么东西导致它与PHP7的破坏,我只是不能为我的生命发现它 代码如下: <?php get_header(); ?> <div class="page-container"> <div class="section"> &

我已经通过PHP7兼容性检查程序运行了这段代码,它不会返回任何错误

但是,当我将服务器从PHP5.6切换到PHP7时,这段代码会自动停止工作。它没有输出啤酒抽头列表,而是什么也不输出

我错过了什么?很明显,有什么东西导致它与PHP7的破坏,我只是不能为我的生命发现它

代码如下:

<?php

 get_header(); ?>

 <div class="page-container">

    <div class="section">
        <div class="parallax-img" style="background-image: url(<?php the_field('page_banner') ?>);"><h1><?php the_field('page_title') ?></h1></div>
        <div class="section-content">
            <?php the_field('page_content') ?>

                <?php                                                                    
                $string = 
                    $string = 
                    file_get_contents("https://server.digitalpour.com/DashboardServer/api/v3/MenuItems/53716a8dfb890c0d68677264/1/Tap?apiKey=53926cc7fb890c0528735cde");

                    $json_taps = json_decode($string, true);  


                $t=1; 
                echo '<div id="taplist-container">'; 

                foreach ($json_taps as $beverage) { 

                        $item_name = $beverage['MenuItemDisplayDetail']['DisplayName'];
                        $producer_name = $beverage['MenuItemProductDetail']['FullProducerList'];
                        $beverage_name = $beverage['MenuItemProductDetail']['BeverageNameWithVintage'];
                        $beverage_style = $beverage['MenuItemProductDetail']['FullStyleName'];
                        $beverage_color = $beverage['MenuItemProductDetail']['Beverage']['StyleColor'];
                        $year = $beverage['MenuItemProductDetail']['Year'];
                        $logo = $beverage['MenuItemProductDetail']['Beverage']['ResolvedLogoImageUrl'];
                        $beverage_abv = $beverage['MenuItemProductDetail']['Beverage']['Abv'];
                        $beverage_ibu = $beverage['MenuItemProductDetail']['Beverage']['Ibu'];
                        $beverage_type = $beverage['MenuItemProductDetail']['BeverageType'];
                        $beverage_description = $beverage['MenuItemProductDetail']['Beverage']['CustomDescription'];
                        $beer_advocate = $beverage['MenuItemProductDetail']['Beverage']['BeerAdvocateUrl'];
                        $rate_beer = $beverage['MenuItemProductDetail']['Beverage']['RateBeerUrl'];

                        $price = $beverage['MenuItemProductDetail']['Prices'][0]['Price'];
                        $size = $beverage['MenuItemProductDetail']['Prices'][0]['DisplayName'];

                        $producer_location = "";
                        $producer_url = "";
                        switch($beverage_type) {
                            case "Beer":
                                $producer_location = $beverage['MenuItemProductDetail']['Beverage']['Brewery']['Location'];
                                $producer_url = $beverage['MenuItemProductDetail']['Beverage']['Brewery']['BreweryUrl'];
                                break;
                            case "Cider":
                                $producer_location = $beverage['MenuItemProductDetail']['Beverage']['Cidery']['Location'];
                                $producer_url = $beverage['MenuItemProductDetail']['Beverage']['Cidery']['CideryUrl'];
                                break;
                            case "Mead":
                                $producer_location = $beverage['MenuItemProductDetail']['Beverage']['Meadery']['Location'];
                                $producer_url = $beverage['MenuItemProductDetail']['Beverage']['Meadery']['MeaderyUrl'];
                                break;
                            case "Wine":
                                $producer_location = $beverage['MenuItemProductDetail']['Beverage']['Winery']['Location'];
                                $producer_url = $beverage['MenuItemProductDetail']['Beverage']['Winery']['WineryUrl'];
                                break;
                            case "Kombucha":
                                $producer_location = $beverage['MenuItemProductDetail']['Beverage']['KombuchaMaker']['Location'];
                                $producer_url = $beverage['MenuItemProductDetail']['Beverage']['KombuchaMaker']['Url'];
                                break;
                            case "Soft Drink":
                                $producer_location = $beverage['MenuItemProductDetail']['Beverage']['SoftDrinkMaker']['Location'];
                                $producer_url = $beverage['MenuItemProductDetail']['Beverage']['SoftDrinkMaker']['Url'];
                                break;
                        }
                        $date_put_on = $beverage['DatePutOn']; 
                        $bottle_size = $beverage['MenuItemProductDetail']['Prices'][0]['Size'];   
                        $bottle_price = $beverage['MenuItemProductDetail']['Prices'][0]['Price'];
                        $bottlePrices = $beverage['MenuItemProductDetail']['Prices'];
                        $pricesSizesHtml = "<strong>Sizes &amp; Prices</strong><br> ";
                            foreach($bottlePrices as $prices){
                                $pricesSizesHtml .=  $prices['DisplayName'] . ": $" . $prices['Price'] . "&nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;";
                            }
                        $beverage_ps = $beverage['MenuItemProductDetail']['Prices'][0]['DisplayName']; 
                        $in_bottles = $beverage['MenuItemProductDetail']['AvailableInBottles'];
                        $keg_size = $beverage['MenuItemProductDetail']['KegSize'];
                        $oz_remaining = $beverage['MenuItemProductDetail']['EstimatedOzLeft'];
                        $scale = 1.0; //


                    //calculating percentage of keg remaining
                    // Get Percentage out of 100
                    if ( !empty($keg_size) ) { $percent = $oz_remaining  / $keg_size; } 
                    else { $percent = 0; }

                    // Limit to 100 percent (if more than the max is allowed)
                    if ( $percent > 1 ) { $percent = 1; }     
                    if ( $percent < 0 ) { $percent = .005; }     
                    $percent_remaining = number_format($percent*100, 0);
                    if ( $percent_remaining < 1 ) {$percent_remaining = "< 1";}


                    //determine percent Left color
                    //                  |-----------Red ---------------------------|   |-------Green--------------------| |Blue|
                    $percent_left_color = (max(0,min(255,511 * (1-$percent))) * 65536) + (max(0,min(255,511 * $percent)) * 256) + 40;

                    $html =  
                        '<div class="keg-container">'.
                        '<div class="boxfielddata">'. 

                        //'<div class="brewery-logo"><img src="'.$logo.'" alt="'.$producer_name.'" /></div>'.
                        //'<div class="brewery-logo">'.(!empty($logo) ? '<img src="'.$logo.'">' : '').$logo.''.'</div>'.
                        '<div class="brewery-logo">'.(!empty($logo) ? '<img src="'.$logo.'" />' : '').'</div>'.
                        '<div class="keg-info">'.         
                        '<div class="brewery">'.(!empty($producer_url) ? '<a href="'.$producer_url.'" target="_blank">' : '</a>').$producer_name.'</a> '.'</div>'.
                        '<div class="beverage-name">'.$beverage_name.'</div>'.
                        '<div class="beverage-type">'.$beverage_style.'</div>'.
                        '<div class="abv">ABV: '.$beverage_abv.'% | IBU: '.$beverage_ibu.'</div>'.
                        //'<div class="prices">'.$pricesSizesHtml.'</div>'.

                        //'<div class="reviews">
                            //<strong>Reviews</strong><br />
                            //<a href="'.$beer_advocate.'" target="_blank" rel="nofollow">'.$beer_advocate.'</a> | <a href="'.$rate_beer.'" target="_blank" rel="nofollow">'.$rate_beer.'</a>
                        //</div>'.

                        '<div class="beverage-description">'.$beverage_description.'</div>'.

                        '<div class="beverage-type">'.$displaySize.'</div>'.
                        '<span>'.($beverage_ps == '12oz' ? $beverage_ps : '').'</span>'.
                        '<span style="position:relative;">'.($in_bottles == TRUE 
                ? '<a href="/dev/?page_id=7&so=brewery">Available in bottles!</a>' : 
                '').'</span>'.    
                //PERCENTAGE AND COLOR
                        '<div class="percent-remaining" style="width:'.round(100 * $scale).'px;">'.
                        '<div style="width:'.round(max($percent*100,5) * $scale).'px; height: 20px; background-color: #'.substr("000000".dechex($percent_left_color),-6).';"></div>'.
                        '</div>'.
                        '<div class="percent-number">'.$percent_remaining.'%</div>'.
                        '</div></div>'. 
                        '</div>'. 

                        ($t == $countnumrows ? '</div><div id="shim"></div><div id="datafieldcontainer">' : '');    

                echo $html;
                $t++;     
                }

                ?>  

            <div id="digital-pour"><a href="http://www.digitalpour.com" rel="nofollow" target="_blank"><img src="/wp-content/themes/mcnallys/images/digitalpour.jpg" alt="DigitalPour"></a></div>
        </div>
    </div>

 </div>

<?php get_footer(); ?>

结果我不得不更改php.ini设置,使其看起来像这样:

允许\u url\u fopen=ON


allow_url_include=ON

是否查看了错误日志?请尝试在以下位置上首次设置错误显示:ini_set'display_errors'、'stdout';错误应该出现在屏幕上,皮埃尔,非常感谢,这就成功了!结果我不得不更改php.ini设置,使其看起来像这样:allow\u url\u fopen=ON allow\u url\u include=ON