Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
关于再次警告php中的foreach()无效_Php_Foreach - Fatal编程技术网

关于再次警告php中的foreach()无效

关于再次警告php中的foreach()无效,php,foreach,Php,Foreach,为什么我会收到这个PHP警告 为foreach提供的参数无效 我不知道,如果我的PHP出现问题或不兼容,我一直在更改和更新我的PHP版本 这是代码: <?php // Generate a latitude/longitude pair using Google Maps API list($lat,$lng) = $foursquare->GeoLocate($location); // Prep

为什么我会收到这个PHP警告

为foreach提供的参数无效

我不知道,如果我的PHP出现问题或不兼容,我一直在更改和更新我的PHP版本

这是代码:

<?php               
    // Generate a latitude/longitude pair using Google Maps API
    list($lat,$lng) = $foursquare->GeoLocate($location);                
    // Prepare parameters
    $params = array("ll"=>"$lat,$lng");     
    // Perform a request to a public resource
    $response = $foursquare->GetPublic("venues/search",$params);
    $venues = json_decode($response);
?>    
        <?php foreach($venues->response->venues as $venue): ?>
            <div class="venue">
                <?php                           
                    if(isset($venue->categories['0']))
                    {
                        echo '<image class="icon" src="'.$venue->categories['0']->icon->prefix.'88.png"/>';
                    }
                    else
                        echo '<image class="icon" src="https://foursquare.com/img/categories/building/default_88.png"/>';
                        echo '<a href="https://foursquare.com/v/'.$venue->id.'" target="_blank"/><b>';
                        echo $venue->name;
                        echo "</b></a><br/>";

                    if(isset($venue->categories['0']))
                    {
                        if(property_exists($venue->categories['0'],"name"))
                        {
                            echo ' <i> '.$venue->categories['0']->name.'</i><br/>';
                        }
                    }

                    if(property_exists($venue->hereNow,"count"))
                    {
                            echo ''.$venue->hereNow->count ." people currently here <br/> ";
                    }

                    echo '<b><i>History</i></b> :'.$venue->stats->usersCount." visitors , ".$venue->stats->checkinsCount." visits ";                        
                ?>              
            </div>              
        <?php endforeach; ?>

我不知道json数据。但是试试这个选择。如果我有json可能是我无法帮助你更多的细节

<?php 


// Generate a latitude/longitude pair using Google Maps API
list($lat,$lng) = $foursquare->GeoLocate($location);


// Prepare parameters
$params = array("ll"=>"$lat,$lng");

// Perform a request to a public resource
$response = $foursquare->GetPublic("venues/search",$params);
$venues = json_decode(json_decode($response, true));
?>
    <?php if(!empty($venues['response']['venues']) && is_array($venues['response']['venues'])){ ?>
    <?php foreach($venues['response']['venues'] as $venue){ ?>
        <div class="venue">
            <?php 


                if(isset($venue['categories']['0']['icon']['prefix']))
                {
                    echo '<image class="icon" src="'.$venue['categories']['0']['icon']['prefix'].'88.png"/>';
                }
                else
                    echo '<image class="icon" src="https://foursquare.com/img/categories/building/default_88.png"/>';
                    echo '<a href="https://foursquare.com/v/'.$venue['id'].'" target="_blank"/><b>';
                    echo $venue['name'];
                    echo "</b></a><br/>";


                if(isset($venue['categories']['0']))
                {
                    if(property_exists($venue['categories']['0'],"name"))
                    {
                        echo ' <i> '.$venue['categories']['0']['name'].'</i><br/>';
                    }
                }

                if(property_exists($venue['hereNow'],"count"))
                {
                        echo ''.$venue['hereNow']['count'] ." people currently here <br/> ";
                }

                echo '<b><i>History</i></b> :'.$venue['stats']['usersCount']." visitors , ".$venue['stats']['checkinsCount']." visits ";

            ?>

        </div>

    <?php } ?>
    <?php } ?>

var_dump$场馆;它对foreach无效。foreach通常需要一个数组。$VICENTES->response->VICENTES中的任何内容都不是。您需要查看对GetPublic的调用的响应。@HoboSapiens或object;-但是是的,$VICENTES->response->VICENTES也不是,因此为什么不能在OP上对其进行评分