facebook アプリ開発 $me について

takeuchi
0
練習も兼ねて、「おみくじ」アプリ(試作)を作ってみました。

作る前にいろいろと準備が必要です。

一番最初に、参考にしたサイトは
す。


そのサイトで紹介してあるソースをそのまま使って、動作確認。動くのは当たり前でも、他人のソースをそのままコピーしても、やはり動くとうれしい。

次にそのソースを研究。

$me = $facebook->api('/me'); // 自分の情報を取得
$uid = $facebook->getUser(); // 自分のユーザー ID を取得

<img src="https://graph.facebook.com/<?php echo $uid; ?>/picture">
<?php echo $me['name']; ?>

つまり、写真を表示させたいのであれば、
<img src="https://graph.facebook.com/ユーザーID番号/picture">
(ちなみに、私のユーザーIDは15ケタ)

自分の情報を取得するときのおまじない
$me = $facebook->api('/me');

そして <?php echo $me['name']; ?> という記述から、 $me は連想配列である。
その連想配列の「キー」として name があり、その中に 「名前」が格納されている。
では、他にどのような「キー」が存在するか、 phpコマンドの array_keys を使って抽出。
その結果 
Array
(
    [0] => id
    [1] => name
    [2] => first_name
    [3] => last_name
    [4] => link
    [5] => location
    [6] => work
    [7] => education
    [8] => gender
    [9] => timezone
    [10] => locale
    [11] => languages
    [12] => verified
    [13] => updated_time
)

それぞれの キー の中にもいろいろ詰まっていそうなので、
print_r($me);
で、表示してみると

Array
(
    [id] => 100001706516183
    [name] => Kazuhiro Takeuchi
    [first_name] => Kazuhiro
    [last_name] => Takeuchi
    [link] => http://www.facebook.com/kazuhiro.takeuchi
    [location] => Array
        (
            [id] => 
            [name] => 
        )
    [work] => Array
        (
            [0] => Array
                (
                    [employer] => Array
                        (
                            [id] => 15ケタの数字
                            [name] => ○○○○
                        )
                    [position] => Array
                        (
                            [id] => 15ケタの数字
                            [name] => ○○○
                        )
                    [start_date] => ○○
                    [projects] => Array
                        (
                            [0] => Array
                                (
                                    [id] => 15ケタの数字
                                    [name] => ○○○○
                                )
                        )
                )
            [1] => Array
                (
                    [employer] => Array
                        (
                            [id] => 15ケタの数字
                            [name] => ○○○
                        )
                    [position] => Array
                        (
                            [id] => 15ケタの数字
                            [name] => ○○○
                         )
                    [start_date] => 0000-00-00
                    [end_date] => 0000-00-00
                )
        )
    [education] => Array
        (
            [0] => Array
                (
                    [school] => Array
                        (
                            [id] => 15ケタの数字
                            [name] => ○○○
                         )

                    [year] => Array
                        (
                            [id] => 15ケタの数字
                            [name] => 4ケタの数字(西暦年)
                        )
                    [type] => College
                )
        )
    [gender] => male
    [timezone] => 9
    [locale] => ja_JP
    [languages] => Array
        (
            [0] => Array
                (
                    [id] => 109549852396760
                    [name] => Japanese
                )

            [1] => Array
                (
                    [id] => 15けたの数字
                    [name] => ○○○
                )

            [2] => Array
                (
                    [id] => 15けたの数字
                    [name] => ○○○
                )
        )
    [verified] => 1
    [updated_time] => 2011-01-24T12:10:58+0000
)
という具合に、連想配列 $me の中身が確認される。

そこで、 連想配列 $me の中の値をピンポイントで取得する場合、例えば、現在の職場・会社の名前を取り出したいときは、
print_r($me['work'][0]['employer']['name']);
で、取り出せる。

連想配列 $me の中身の一覧表

項目 キー1 キー2 キー3 キー4 キー5 変数
ユーザーID id         $me['id']
ユーザー氏名 name         $me['name']
ユーザー名前 first_name         $me['first_name']
ユーザー姓 last_name         $me['last_name']
facebookページのURL link         $me['link']
ロケーションID location id       $me['location']['id']
ロケーション名 location name       $me['location']['name']
会社ID work 0 employer id   $me['work']['0']['employer']['id']
会社名 work 0 employer name   $me['work']['0']['employer']['name']
役職ID work 0 position id   $me['work']['0']['position']['id']
役職名 work 0 position name   $me['work']['0']['position']['name']
勤務開始日 work 0 start_date     $me['work']['0']['start_date']'
現在のプロジェクトID work 0 projects 0 id $me['work']['0']['projects']['0']['id']
現在のプロジェクト名 work 0 projects 0 name $me['work']['0']['projects']['0']['name']
過去の職歴ID work 1 employer id   $me['work']['1']['employer']['id']
過去の勤務先名 work 1 employer name   $me['work']['1']['employer']['name']
過去の役職ID work 1 position id   $me['work']['1']['position']['id']
過去の役職名 work 1 position name   $me['work']['1']['position']['name']
前の会社での勤務開始日 work 1 start_date     $me['work']['1']['start_date']
前の会社での勤務終了日 work 1 end_date     $me['work']['1']['end_date']
最終学歴ID education 0 school id   $me['education']['0']['school']['id']
最終学歴学校名 education 0 school name   $me['education']['0']['school']['name']
卒業年月日ID education 0 year id   $me['education']['0']['year']['id']
卒業年月日 education 0 year name   $me['education']['0']['year']['name']
学校の種別 education 0 type     $me['education']['0']['type']
性別 gender         $me['gender']
タイムゾーン timezone         $me['timezone']
ブラウザ言語 locale         $me['locale']
(会話)言語ID languages 0 id     $me['languages']['0']['id']
(会話)言語名 languages 0 name     $me['languages']['0']['name']
(会話)言語ID languages 1 id     $me['languages']['1']['id']
(会話)言語名 languages 1 name     $me['languages']['1']['name']
(未調査) verified         $me['verified']
最終更新日 updated_time         $me['updated_time']

このブログ記事について

このページは、takeuchi2011年2月 2日 00:00に書いたブログ記事です。

ひとつ前のブログ記事は「PHP PEARのインストール」です。

次のブログ記事は「Facebookページの「いいね」判定」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。