fql query

1 개요[ | ]

fql_query
  • 커스텀 함수
  • FQL 쿼리를 하나의 함수로 간편하게 하자

2 사용예시[ | ]

영어 이름 출력
$result = fql_query("SELECT name FROM user WHERE uid=me()");
한국어 이름 출력
$result = fql_query("SELECT name FROM user WHERE uid=me()", 'ko_KR');
쿼리문 여러개 수행
$querys = array("SELECT uid, name, pic FROM user WHERE uid=me()",
"SELECT name FROM user WHERE uid IN (SELECT uid1 FROM friend WHERE uid2=me())");
$result = fql_query($querys, 'ko_KR');

3 함수 소스코드[ | ]

function fql_query($querys, $locale='en_US') {
	global $app_id;
	global $app_secret;
	$my_url = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
	if(!isset($_REQUEST["code"])) {
		$dialog_url = 'https://www.facebook.com/dialog/oauth?client_id='.$app_id.'&redirect_uri='.urlencode($my_url);
		echo("<script>top.location.href='".$dialog_url."'</script>");
		return;
	}
	if(is_array($querys)) {
		for($i=0;$i<count($querys);$i++) {
			$query = urlencode($querys[$i]);
			$querys[$i] = '"'.$i.'":"'.$query.'"';
		}
		$q_str = '{'.implode(',', $querys).'}';
	} else $q_str = urlencode($querys);

	$token_url = "https://graph.facebook.com/oauth/access_token?client_id=$app_id"
  .'&redirect_uri='.urlencode($my_url)."&client_secret=$app_secret&code=".$_REQUEST['code'];
	$access_token = substr(file_get_contents($token_url), 13);
	$fql_query_url = "https://graph.facebook.com//fql?q=$q_str&access_token=$access_token&locale=$locale";
	$fql_query_result = file_get_contents($fql_query_url);
	return json_decode($fql_query_result, true);
}

4 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}