Using the new Facebook PHP SDK 3.0 with offline access

As Facebook recently launched the new SDK which follows the oAuth 2.0 [1]. There are couple of things which you need to keep in mind and modify your code so that your app works fine !!

  • getSession() function is removed and getUser() is added which just returns the UID ( if not authenticated then 0). Earlier getSession used to also return the access token, sig, expires incase of offline_access permission
  • Two files instead of one : base_facebook.php and facebook.php. Basically, there an extra class added (BaseFacebook)

According to [1] :

The login code is now:

$facebook = new Facebook(…);
$user = $facebook->getUser();
if ($user) {
  // proceed knowing you have a logged in user who's authenticated
} else {
  // proceed knowing you require user login and/or authentication


Offline Access

Earlier we just used getSession() to retireve access_token, sig and expires then store it in our DB. Now, we have to use getAccessToken() which returns the access_token and can be stored in the DB.

When you need to make an API call, then you can call setAccessToken() with access_token stored in our DB as parameter. Then, you make the call.

All Apps must implement the oAuth flow by 1st September, 2011, so its better to start working now.


If you have anything to add, please leave it as a comment