Как передать массив, где условие в CodeIgniter? - PullRequest
1 голос
/ 31 января 2012

Я использую CodeIgniter в моем приложении.У меня есть код, подобный этому

$ this-> db-> where ('a.PreferenceID NOT IN (SELECT PreferenceParentID FROM'. $ Table. 'WHERE EntityID ='. $ Shop_id. ')', NULL, FALSE);

Я хочу передать array вместо $shop_id.

Как и

$arr = array(1,3,5);

WHERE EntityID='. $arr.'

, оно будет равно

WHERE (EntityID='. $arr[0].' OR EntityID='. $arr[1].' OR EntityID='. $arr[2].')

Поскольку я хочу проверить с несколькими идентификаторами магазинов.Какой самый лучший способ?

Ответы [ 3 ]

3 голосов
/ 31 января 2012

использовать IN предложение как

$this->db->where('a.PreferenceID NOT IN (
    SELECT PreferenceParentID FROM '.$table.' 
    WHERE EntityID IN ('.implode(",", $array).'))',
    NULL, FALSE
);
1 голос
/ 31 января 2012

использование

'SELECT PreferenceParentID FROM '.$table.' WHERE EntityID IN ('.implode(',', $arr_id).')'
0 голосов
/ 31 января 2012

Попробуйте что-то вроде

WHERE EntityID IN('.implode(',', $arr).')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...