Я думаю, что значение преобразуется в int
, что означает, что остаток после "1" игнорируется. Если указан массив, то он ведет себя как предложение IN
в SQL, где каждая запись массива является значением, которое необходимо проверить.
Так что, если вам нужно использовать строку с каждым идентификатором, разделенным запятой, попробуйте следующее:
'conditions' => array(
'Country.zone_id' => explode(",", $conditions)
)
В противном случае, если у вас уже есть массив числовых идентификаторов, вы можете назначить его напрямую:
'conditions' => array(
'Country.zone_id' => array(1, 2, 3),
)