2012-07-05 29 views
2

我有我想要在查询中使用数组:数组转换为字符串MySQL查询

Array ([0] => stdClass Object ([followee] => 267,269,270,271,272,273,275,276,277,278,279)) 

我不知道为什么它返回的消息:

Object of class stdClass could not be converted to string.

控制器:

$data['activity'] = $this->home_model->activity($followID); 

型号:

function activity($followID) 
{ 
    $query_str = 'SELECT DISTINCT name 
        FROM place 
        WHERE userid IN ("'. implode('","', $followID) .'")'; 

$query = $this->db->query($query_str); 
+0

你检查转储? var_dump($ this-> home_model-> activity($ followID)); – Peon

+0

它返回这个:bool(false) – Ciprian

回答

2

尝试$your_array[0]->followee

+0

消息:implode()[function.implode]:无效的参数传递'WHERE用户ID IN(“'。'关键字'('','',$ followID [0] - > followee)。 '')';' – Ciprian

+0

'$ followID'应该是'$ your_array [0] - > followee' .... – xdazz

+0

函数活动($ followID [0] - > followee) - 解析错误:语法错误,意外的'[' ',expected')' – Ciprian

0

那么,你有一个对象在你的变量,你不想转换。

的正确方法,来访问变量会创建这样的类中的功能:

public function getFollowee() { 
    return $this -> followee; 
} 

以及访问的方式:

function activity() { 
    $query_str = 'SELECT DISTINCT name FROM place WHERE userid IN (' . $stdClass -> getFollowee() . ')'; 
    $query = $this -> db -> query($query_str); 
}