public static function findByProductCodes(array $productCodes) { $productCodes = array_filter(array_map('trim', $productCodes)); if (empty($productCodes)) { return []; } $placeholders = []; $params = []; foreach ($productCodes as $i => $code) { $param = 'code' . $i; $placeholders[] = ':' . $param; $params[$param] = $code; } return self::findAll( ' produs.cod_bara != "-" AND produs.cod_bara != "" AND produs.stare_produs = 1 AND produs.marca_id != 0 AND produs_optiune.id IS NULL AND produs.cod_produs IN (' . implode(',', $placeholders) . ') ', $params, [ TB_PREFIX . 'produs_description' => ' produs_description.produs_id = produs.id ', TB_PREFIX . 'produs_optiune' => ' produs_optiune.produs_id = produs.id ', TB_PREFIX . 'trendyol_products' => ' trendyol_products.produs_id = produs.id AND trendyol_products.cod_produs = produs.cod_produs ', TB_PREFIX . 'marca' => ' marca.id = produs.marca_id ', ], 'produs.id', 'produs.cod_produs ASC', 0, 0, ' produs.id AS id, produs.id AS produs_id, produs_description.nume_produs AS produs_nume, marca.nume AS marca_nume, produs.cod_produs, produs.cod_bara, produs.live_stoc, produs.marca_id, trendyol_products.trendyol_category_id ' ); } $products = Product::findByProductCodes([ 'SPIL-044', 'SPIL-045', 'SPIL-046', ]);