PHP,FACEBOOK,PAGES,RSS:帮助将页面输入转换为RSS(获取错误)

Ok, so following some instructions I found in another post here on StackOverflow, I have constructed a script to get a fan pages feed and turn it into an RSS2 feed. However, the script required a few changes and Im not the best programmer in the world, so I need a little help.

Im getting this error:

Warning: Invalid argument supplied for foreach() in feed.php on line 48

Im not sure what the invalid argument is all about.

<?

// error reporting
echo '<pre>';
ini_set('display_errors', 'on');
error_reporting(E_ALL);

// require your facebook php sdk
require('./facebook/facebook.php'); 

// include the feed generator feedwriter file                   
include("./feed/FeedWriter.php");                       


// config secret key and appid
$config = array(
'appId' =>  '',                             
'secret'=>  ''      
);

// Initialize
$facebook = new Facebook($config);

// Set Apps Permissions Request
$permission_scope = "";

   // get users access token
$access_token = $facebook->getAccessToken();

    // get page post
    $feed_url = 'https://www.facebook.com/Ritualdubstep/feed?access_token='.$access_token;
    $feed_json = file_get_contents($feed_url);
    $feed_data = json_decode($feed_json);

// create the feedwriter object 
$feed = new FeedWriter(RSS2);

$feed->setTitle('Ritual Dubstep'); // set your feed title
$feed->setLink('https://www.facebook.com/Ritualdubstep'); // set the url to the feed page you're generating

$feed->setChannelElement('updated', date(DATE_RSS , time()));
$feed->setChannelElement('author', array('name'=>'Ritual Dubstep SF')); // set the author name

// iterate through the facebook response to add items to the feed
foreach($feed_data['data'] as $entry){
    if(isset($entry["message"])){
        $item = $feed->createNewItem();
        $item->setTitle($entry["from"]["name"]);
        $item->setDate($entry["updated_time"]);
        $item->setDescription($entry["message"]);
        if(isset($entry["link"]))
            $item->setLink(htmlentities($entry["link"]));

        $feed->addItem($item);
        }
}

// generate feed
$feed->genarateFeed();
?>

Generally it means that the first argument in the foreach call (in this case $feed_data['data']) is not a valid array.

Make sure that $feed_data['data'] exists (isset($feed_data['data'])) and that it is an array (is_array($feed_data['data'])) before running entering the foreach loop.

And - as shapeshifter mentioned in the comments - you might want to start troubleshooting by var_dump($feed_data['data']) right before you start the foreach loop to see what's being generated.