gpt4 book ai didi

php - Facebook FQL 用户表 `sex` 字段 : how to return male/female even the user is using different locale?

转载 作者:可可西里 更新时间:2023-10-31 22:08:29 25 4
gpt4 key购买 nike

情况:

我的 facebook 应用程序 ( http://apps.facebook.com/mymagicmirror/ ) 需要检测用户的性别,然后查询异性或男性或女性

FQL:

SELECT uid, name, pic, sex FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1='.$user_id.') and sex='male'

问题:当 facebook 用户使用其他语言环境时,“性别”字段不再匹配“男性”和“女性”。相反,用中文来说,性别将变为男性/女性,而 sex='male' 的 FQL 将返回零结果。

有什么解决方案可以查询所有男性/女性 friend ,即使 facebook 用户的语言环境不是英语?

最佳答案

将以下函数之一添加到您的 facebookapi_php5_reSTLib.php 文件中:

users.getInfo函数:
来自:http://forum.developers.facebook.com/viewtopic.php?pid=166745#p166745

public function &users_getInfo_en_US($uids, $fields) {
return $this->call_method('facebook.users.getInfo',
array('uids' => $uids, 'fields' => $fields, 'locale' => 'en_US'));
}

然后,您可以调用 users_getInfo_en_US($user, array('sex'));


FQL 函数:
从上面的链接但 pid=166866#p166866
一个用于 en_US 语言环境(来自之前的帖子),另一个让您传入要使用的语言环境,如下所示:

public function &fql_query_localized($query, $locale) 
{
return $this->call_method('facebook.fql.query',
array('query' => $query, 'locale' => $locale));
}

然后,只需为 $locale 传入字符串 'en_US'

关于php - Facebook FQL 用户表 `sex` 字段 : how to return male/female even the user is using different locale?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1594871/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com