mgsmus
Merhaba,
Evet ben de şu an böyle yapıyorum ama bana çok uzun geldi. Sizin önerdiğiniz kullanımı şu şekilde kullansam iyi olmaz mı ?
$array = [
"ProductCode" => $urun[0]->ItemCode,
"ProductPrice" => 40,
"ProductStock" => 50,
"ProductInfoMD5" => "e630b781a34ad3fcecbd00bd62a20dda",
"ProductPriceStockMD5" => "e630b781a34ad3fcecbd00bd62a20dda",
"CreateDate" => date('Y-m-d H:i:s'),
"InfoUpdateDate" => date('Y-m-d H:i:s'),
"PriceStockUpdateDate" => date('Y-m-d H:i:s')
];
DB::table($database)
->when(!empty($urun[0]->ColorDescription), function ($query) use($array,$urun) {
$array['VaryantValue1'] = $urun[0]->ColorDescription;
$query->when(!empty($urun[0]->ItemDim1Code), function ($query) use($array,$urun){
$array['VaryantValue2'] = $urun[0]->ItemDim1Code;
return $query->insert($array);
}, function ($query) use($array){
return $query->insert($array);
});
}, function ($query) use($array,$urun){
$query->when(!empty($urun[0]->ItemDim1Code), function ($query) use($array,$urun){
$array['VaryantValue1'] = $urun[0]->ItemDim1Code;
return $query->insert($array);
}, function ($query) use($array){
return $query->insert($array);
});
});
1 - ColorDescription ve ItemDim1Code boş değilse ColorDescription = VaryantValue1, ItemDim1Code = VaryantValue2 olarak kaydediyorum.
2 - ColorDescription dolu ve ItemDim1Code boş ise ColorDescription = VaryantValue1 olarak kaydediyorum.
3- ItemDim1Code dolu ve ColorDescription boş ise ItemDim1Code = VaryantValue1 olarak kaydediyorum.
4- Her ikisi de boşsa array ekleme yapmadan direk içeriye alıyorum.
Bunu yapma amacım VaryantValue1, VaryantValue2 ve VaryantValue3 değerlerim var. Bunlar ürün ürün değişebiliyor. Bir ayakkabı modelinde renk ve beden olabilirken , bir telefonda örnek veriyorum sadece renk var.
Buna göre daha kısa ve hızlı bir şeyler yapmayı hedefledim. Ben beğendim bunu ama siz ne düşünüyorsunuz ? Yavaş mı kalır if else göre ?