cakephpのcontain()内でのクロージャに use()を使って引数を渡す。
js感覚でvarスコープの変数を渡そうとすると渡せない。
use ($supplier_id)で渡す。
$supplier_id = 2;//これを渡したい。
$query = $this->Products->find();
$query
->contain([
'Suppliers' => function($q) use ($supplier_id){
return $q->where(['Suppliers.id'=>$supplier_id]);
}
]);
コメントを残す