1

phpを使用してFacebookページ、グループ、または人物が存在するかどうかを確認するにはどうすればよいですか?

ロバート

4

5 に答える 5

5

Facebook APIを試してください(https://developers.facebook.com/docs/reference/php/)

$facebook->api('PAGEID or USERID here');

存在しない場合、Facebookはを返しfalseます。

サンプルURLのリストについては、https://developers.facebook.com/docs/reference/api/を参照してください。

于 2012-07-05T07:20:19.970 に答える
2

現在、存在しないFacebookページにアクセスすると、次のメッセージが表示されます。

あなたが要求したページは見つかりませんでした。 期限切れのリンクをクリックしたか、アドレスを誤って入力した可能性があります。一部のWebアドレスでは、大文字と小文字が区別されます。

したがって、基本的には次のことができます。

$page = file_get_contents( 'http://www.facebook.com/no_real_page' );
$pos = strrpos( $page, 'The page you requested was not found' );
if ( $pos === true ) {
  // non existing page!
}

ただし、変更してください。メッセージが変更される可能性があり、その場合、そのスクリプトで結果が得られません。後で簡単に変更できるように、定数に配置することをお勧めします。

# config.php
define ( FACEBOOK_ERROR, 'The page you requested was not found' );

# script.php
$page = file_get_contents( 'http://www.facebook.com/no_real_page' );
$pos = strrpos( $page, FACEBOOK_ERROR );
if ( $pos === true ) {
  // non existing page!
}
于 2012-07-05T07:29:30.567 に答える
1

Facebookはfile_get_contentsまたcUrlDainis Abols言ったようにサポートしていません。

このコードは、他のWebサイトが存在するかどうかを確認するのに役立ちます。しかし、Facebookは他のWebサイトとはかなり異なります。

<?php
$page = file_get_contents('http://www.facebook.com/pages/Studentmug/349363763205');
$pos = strrpos( $page, 'The page you requested was not found' );
echo "$page";
if ( $pos === true ) {
  // non existing page!
}
?>
于 2012-07-05T07:41:54.877 に答える
-1

ユーザー/グループのfacebook_idまたはurlが必要になります。次に、curlを使用して、返されたステータスコードを探すことができます。404は、存在しないことを意味します。

http://php.net/manual/en/book.curl.php

于 2012-07-05T07:18:10.013 に答える
-2

Gabriel SantosとJeffのおかげで、これが私が最終的に得たものです。

// A function to check if a facebook page exists 
// and if its a personal or published page  
function CheckFB($fbexist) { // $fbexist is the pageID or userID
    require_once("include/facebook.php"); // Facebook php-sdk

                // Install and Initialize
    $config = array();
    $config['appId'] = 'APP_ID/KEY';
    $config['secret'] = 'APP_SECRET';

          // Create Facebook object
    $facebook = new Facebook($config);

    try {
        $facebook->api($fbexist);
        if (!$facebook->api($fbexist)) {  // if this returns false
            $personal = "No";       // it's not a personal page
        } else {                          // or group
            $personal = "Yes";
        }

    } catch(FacebookApiException $e) {           // If there is an exception
        $checked = array(false, $personal);// the page doesn't exist
        return $checked;
    }
          $checked = array(true, $personal);
    return $checked;
}

助けてくれてありがとう:)

于 2012-07-05T10:42:13.483 に答える