Спасибо за помощь.Наконец-то я выясняю, как это сделать.
Сначала мне нужно получить токен доступа, а не пользовательский сеанс, а тот, что для администратора.
Итак, вот код:
$url = 'https://graph.facebook.com/oauth/access_token';
$ch = curl_init();
$params = array(
'grant_type'=>'client_credentials',
'client_id'=>$appId,
'client_secret'=>$secret,
);
$opts[CURLOPT_POSTFIELDS] = http_build_query($params, null, '&');
// set URL and other appropriate options
curl_setopt_array($ch, $opts);
curl_setopt($ch, CURLOPT_URL, "$url");
curl_setopt($ch, CURLOPT_HEADER, 0);
// grab URL and pass it to the browser
$adminAccessToken = curl_exec($ch);
// close cURL resource, and free up system resources
curl_close($ch);
И затем я могу использовать API Facebook, чтобы получить любого пользователя, который принимает приложение и расширенное разрешение, например:
$fql = "select name, hometown_location, sex, pic_square, email from user where uid=1000000001";
$param = array(
'method' => 'fql.query',
'query' => $fql,
'access_token' =>$adminAccessToken ,
'callback' => ''
);
$fqlResult2 = $facebook->api($param);
с токеном доступа, я также могу публиковать вещи на стене пользователя.:)