[Facebook]Fbページのカバー画像[メモ]

かなり久しぶりの更新です。

Facebookページのカバー画像についてちょっとしたメモを・・・

graph APIでカバー写真のデータを取得できるのですが、サイズが合わないものがあります。。。
現在のカバー写真のサイズは、851×315で表示されるようになっているらしい。

graph APIで取得したイメージは丁度のものから、縦サイズが大きいものがあったりします。
縦サイズが大きい場合、大抵cover.offset_yに値が入っています。

で、ピクセル的に何ピクセルのoffsetかというところになるんですが、、、

その計算式をメモしておきます。。

まず、ソースの縦横サイズを取得
$size = getimagesize($data[‘cover’][‘source’]);

で、オフセットの取得
$offset_y = ceil($data[‘cover’][‘offset_y’]/100*((851/$size[0]*$size[1])-315));

$url = str_replace(“/s720x720/”, “/c0.”.$offset_y.”.851.315/p851x315/”, $data[‘cover’][‘source’]);

とりあえずここまで・・・

スポンサーリンク

[メモ]PHPでアップロード進捗状況がわかるらしい[未検証]

とりあえず、↓こんなのを見つけたので後で実験してみる。
セッションのアップロード状況

コレができるなら、もう少し面白そうなuploaderが作れるのでは?とか思ったりします。

追記:
php5.4.0以降から使えるのか・・・・
ちょっとめんどうなので、またの機会だな・・orz

スポンサーリンク

[メモ]mongodb:配列内の値での絞り込みの仕方

完全に自分用メモです。

mongoDBで配列内の値をキーにどうやって絞り込むか解らなかったので、調べました。
※実際に値を作ってクエリー投げてみて確認しました。

基本的にはここにすべて書かれています。
高度なクエリー-配列内の値

自分が適当に検証したのは・・

[user@servername ~]$ mongo test_db
> db.test_collection.save({a:1});
> db.test_collection.save({a:2});
> db.test_collection.save({a:3});
> db.test_collection.save({a:4});
> db.test_collection.save({a:5});
> db.test_collection.save({a:6});
> db.test_collection.save({a:7,b:[{b1:"b1_1",b2:"b1_2"},{b1:"b2_1",b2:"b2_2"}]});
> db.test_collection.save({a:8,b:[{b1:"b1_2",b2:"b1_3"},{b1:"b2_2",b2:"b2_3"}]});
> db.test_colection.find({b:{$elemMatch:{b1:"b1_1"}}});
{ "_id" : ObjectId("4febdcb92cd09b7bd6abce80"), "a" : 7, "b" : [ { "b1" : "b1_1", "b2" : "b1_2" }, { "b1" : "b2_1", "b2" : "b2_2" } ] }
>

これで見事に取得できている。。
db.test_colection.find({b:{$elemMatch:{b1:”b1_1″}}});
(結局$elemMatchを使えばよいということらしい。)

これでやっと、一つわからない部分が解決した。。
長かったなぁ・・・

スポンサーリンク