使用facebook登录时控制器的代码。在这里,在请求位置时,我确实从facebook获得了价值。但问题是,当我在视图页面上提供位置信息时,我只需要名称而不需要id。它说数组到字符串转换出错。
{
"id": "1069347886434951",
"name": "Saugat Thapa",
"location": {
"id": "106085869430478",
"name": "Kathmandu, Nepal"
}
}
public function web_login()
{
$data['user'] = array();
// Check if user is logged in
if ($this->facebook->is_authenticated())
{
// User logged in, get user details
$location= $this->facebook->request('get', '/me?fields=location{id,name}');
if (!isset($user['error']))
{
$data['location'] = $location;
}
}
// display view
$this->load->view('examples/web', $data);
}
正在查看
<?php foreach ($location as $key => $value) : ?>
<li><?php echo $key; ?> : <?php echo $value; ?></li>
<?php endforeach; ?>
将此<?php echo $value; ?>
更改为此<?php echo $value['name']; ?>
代码进入此处
<?php break; ?> // break
中断循环,因为数组中的下一个元素是字符串,它将产生错误illegal string offset
,并且由于您只想要名称,所以它很好