$exec, "debug" => curl_getinfo($ch));
}else{
return $exec;
}
}
public function search($source, $finder){
preg_match_all($finder, $source, $response);
return $response;
}
public function dogalinya($url) {
$indirim = 0;
$glutensiz = $this->curl($url);
}
public function glutensizcom($url){ // STOK YAPILDI - 404 TAMAM
$indirim = 0;
$glutensiz = $this->curl($url);
$glutensiz404 = $this->search($glutensiz, '@Ürün Bulunamadı.@si');
if($glutensiz404[0][0] == "Ürün Bulunamadı."){
return array(
"success" => 1,
"indirim" => "",
"normal_fiyat" => "",
"indirimli_fiyat" => "",
"indirim_yuzde" => "",
"stok" => "",
"stok_sayisi" => "",
"404" => "1"
);
}else{
$glutensiz_fiyat = $this->search($glutensiz, '@
(.*?)
@si');
$glutensiz_stok = $this->search($glutensiz, '@stock-warning@si');
$glutensiz_stok_sayisi = $this->search($glutensiz, '@data-stockamount=(.*?)value=@si');
$glutensiz_stok_sayisi = preg_replace('/[^0-9]/', '', $glutensiz_stok_sayisi[1][0]); // net stok sayısı
if($glutensiz_stok[0][0] == "stock-warning"){
$glutensiz_stok = "0";
}else{
$glutensiz_stok = "1";
}
if(isset($glutensiz_fiyat[1][0])){
$glutensiz_fiyat_indirim = $this->search($glutensiz, '@(.*?)
@si');
if(isset($glutensiz_fiyat_indirim[1][0])){
$indirim = 1;
$glutensiz_fiyat_indirim_yuzde = $this->search($glutensiz, '@(.*?)
@si');
$glutensiz_fiyat_indirim_yuzde = ltrim($glutensiz_fiyat_indirim_yuzde[1][0], "%");
$glutensiz_fiyat_indirim = explode("T", trim($glutensiz_fiyat_indirim[1][0]));
$glutensiz_fiyat_indirim = $glutensiz_fiyat_indirim[0];
}else{
$glutensiz_fiyat_indirim = "";
$glutensiz_fiyat_indirim_yuzde = "";
}
$glutensiz_fiyat = explode("T", trim($glutensiz_fiyat[1][0]));
$glutensiz_fiyat = $glutensiz_fiyat[0];
//$glutensiz_fiyat = str_replace(".", ",", $glutensiz_fiyat);
//$glutensiz_fiyat_indirim = str_replace(".", ",", $glutensiz_fiyat_indirim);
$glutensiz_fiyat = str_replace(",",".",$glutensiz_fiyat);
$glutensiz_fiyat_indirim = str_replace(",",".",$glutensiz_fiyat_indirim);
return array(
"success" => 1,
"indirim" => $indirim,
"normal_fiyat" => trim($glutensiz_fiyat),
"indirimli_fiyat" => trim($glutensiz_fiyat_indirim),
"indirim_yuzde" => trim($glutensiz_fiyat_indirim_yuzde),
"stok" => trim($glutensiz_stok),
"stok_sayisi" => trim($glutensiz_stok_sayisi),
"404" => 0
);
}else{
return array(
"success" => 0
);
}
}
}
public function eekmek($url){ // STOK YAPILDI - Stok Çekilemiyor - 404 SORUNLU YÖNLENDİRME VAR?
$ekmek = $this->curl($url);
$fiyat = $this->search($ekmek, '@ (.*?)@si');
$eekmek_stok = $this->search($ekmek, '@Stokta Var@si');
if($eekmek_stok[0][0] == "Stokta Var"){
$eekmek_stok = "1";
}else{
$eekmek_stok = "0";
}
if(isset($fiyat[1][0])){
$indirim = 0;
$fiyat = explode("T", $fiyat[1][0]);
$fiyat = $fiyat[0];
$fiyat = str_replace(",",".",$fiyat);
$old_price = $this->search($ekmek, '@ (.*?)
@si');
if(isset($old_price[1][0])){
$indirim = 1;
$old_price = explode("T", $old_price[1][0]);
$old_price = $old_price[0];
$old_price = str_replace(",",".",$old_price);
$yuzde = $this->search($ekmek, '@(.*?)@si');
$yuzde = $this->search($yuzde[1][0], '@(.*?)
@si');
if(isset($yuzde[1][0])){
$yuzde = $yuzde[1][0];
$yuzde = explode("&", ltrim($yuzde, "%"));
$yuzde = $yuzde[0];
}else {
$yuzde = "";
}
}else{
$old_price = "";
}
if($indirim == 1){
return array(
"success" => 1,
"indirim" => $indirim,
"normal_fiyat" => trim($old_price),
"indirimli_fiyat" => trim($fiyat),
"indirim_yuzde" => $yuzde,
"stok" => $eekmek_stok,
"404" => 0
);
}else{
return array(
"success" => 1,
"indirim" => $indirim,
"normal_fiyat" => trim($fiyat),
"indirimli_fiyat" => "",
"indirim_yuzde" => "",
"stok" => $eekmek_stok,
"404" => 0
);
}
}else{
return array(
"success" => 0
);
}
}
public function glutensiznokta($url){
$indirim = 0;
$glutensiznokta = $this->curl($url);
$glutensiznokta404 = $this->search($glutensiznokta, '@NOT FOUND@si');
if($glutensiznokta404[0][0] == "Not Found"){
return array(
"success" => 1,
"indirim" => "",
"normal_fiyat" => "",
"indirimli_fiyat" => "",
"indirim_yuzde" => "",
"stok" => "",
"stok_sayisi" => "",
"404" => "1"
);
}else{
$glutensiznokta_stok = $this->search($glutensiznokta, '@Stokta yok@si');
$glutensiznokta_fiyat = $this->search($glutensiznokta, '@@si');
if (count($glutensiznokta_stok[0]) > 0) {
$glutensiznokta_stok = "0";
} else {
$glutensiznokta_stok = "1";
}
//print_r($glutensiznokta_fiyat);
$glutensiznokta_sub = $this->search($glutensiznokta, '@(.*?)
@si');
if(isset($glutensiznokta_sub[1][0])){
$glutensiznokta_sub = $glutensiznokta_sub[1][0];
$glutensiznokta_fiyat_indirim = $this->search($glutensiznokta_sub, '@(.*?)search($glutensiznokta, '@(.*?)@si');
$glutensiznokta_fiyat_indirim_yuzde = ltrim($glutensiznokta_fiyat_indirim_yuzde[1][0], "%");
$glutensiznokta_fiyat_indirim = explode("T", trim($glutensiznokta_fiyat_indirim[1][0]));
$glutensiznokta_fiyat_indirim = $glutensiznokta_fiyat_indirim[0];
$temp_price = $glutensiznokta_fiyat_indirim;
$glutensiznokta_fiyat_indirim = $glutensiznokta_fiyat[1][0];
$glutensiznokta_fiyat[1][0] = $temp_price;
}else{
$glutensiznokta_fiyat_indirim = "";
$glutensiznokta_fiyat_indirim_yuzde = "";
}
$glutensiznokta_fiyat = explode("T", trim($glutensiznokta_fiyat[1][0]));
$glutensiznokta_fiyat = $glutensiznokta_fiyat[0];
//$glutensiznokta_fiyat = str_replace(".", ",", $glutensiznokta_fiyat);
//$glutensiznokta_fiyat_indirim = str_replace(".", ",", $glutensiznokta_fiyat_indirim);
$glutensiznokta_fiyat = str_replace(",",".",$glutensiznokta_fiyat);
$glutensiznokta_fiyat_indirim = str_replace(",",".",$glutensiznokta_fiyat_indirim);
return array(
"success" => 1,
"indirim" => $indirim,
"normal_fiyat" => trim($glutensiznokta_fiyat),
"indirimli_fiyat" => trim($glutensiznokta_fiyat_indirim),
"indirim_yuzde" => trim($glutensiznokta_fiyat_indirim_yuzde),
"stok" => trim($glutensiznokta_stok),
"stok_sayisi" => "",
"404" => 0
);
}else{
return array(
"success" => 0
);
}
}
}
public function gidavm($url){ // STOK YAPILDI - Sınırsız Stok - 404 Tamam
$gidavm = $this->curl($url);
$old_price = $this->search($gidavm, '@(.*?)
@si');
$stok = $this->search($gidavm, '@Ürün stokta bulunmamaktadır@si');
$gidaavm_stok_sayisi = $this->search($gidavm, '@data-selector="product-real-amount-(.*?)" value="@si');
$gidaavm404 = $this->search($gidavm, '@Üzgünüz aradığınız sayfa bulunamadı@si');
if($gidaavm404[0][0] == "Üzgünüz aradığınız sayfa bulunamadı"){
return array(
"indirim" => "",
"success" => 1,
"normal_fiyat" => "",
"indirimli_fiyat" => "",
"indirim_yuzde" => "",
"stok" => "",
"404" => 1
);
}else{
$gidaavm_stok_sayisi = $gidaavm_stok_sayisi[1][0];
if($stok[0][0] == "Ürün stokta bulunmamaktadır"){
$gidaavm_stok = "0";
}else{
$gidaavm_stok = "1";
}
$indirim = 0;
if(isset($old_price[1][0])){
$indirim = 1;
if(isset($old_price[1][0])){
$old_price = $old_price[1][0];
$old_price = explode("T", $old_price);
$old_price = $old_price[0];
$new_price = $this->search($gidavm, '@(.*?)
@si');
if(isset($new_price[1][0])){
$new_price = $new_price[1][0];
$new_price = explode("T", $new_price);
$new_price = $new_price[0];
}else{
$new_price = "";
}
//$old_price = str_replace(".", ",", $old_price);
//$new_price = str_replace(".", ",", $new_price);
$old_price = str_replace(",",".",$old_price);
$new_price = str_replace(",",".",$new_price);
$indirim_orani = ((sayiduzenle($old_price) - sayiduzenle($new_price)) / sayiduzenle($old_price)) * 100;
return array(
"indirim" => $indirim,
"success" => 1,
"normal_fiyat" => trim($old_price),
"indirimli_fiyat" => trim($new_price),
"indirim_yuzde" => sayiDuzenle(trim($indirim_orani)),
"stok" => NULL,
"404" => 0
);
}else{
return array(
"success" => 0
);
exit;
}
}else{
$fiyat = $this->search($gidavm, '@(.*?)
@si');
if(isset($fiyat[1][0])){
$fiyat = $fiyat[1][0];
$fiyat = explode("T", $fiyat);
$fiyat = $fiyat[0];
//$fiyat = str_replace(".", ",", $fiyat);
$fiyat = str_replace(",",".",$fiyat);
return array(
"success" => 1,
"normal_fiyat" => trim($fiyat),
"indirimli_fiyat" => "",
"indirim_yuzde" => "",
"stok" => trim($gidaavm_stok),
"stok_sayisi" => trim($gidaavm_stok_sayisi),
"404" => 0
);
}else{
return array(
"success" => 0
);
exit;
}
}
}
}
public function migrosdata($sku) {
$url = "https://www.migros.com.tr/rest/products/screens/" . $sku;
$json = $this->curl($url, false, array(), array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_URL => $url
));
$data = json_decode($json, true);
echo ($data);
$data = $data["data"]["storeProductInfoDTO"];
$product = array(
"sku" => $data["sku"],
"status" => $data["status"],
"regularPrice" => isset($data["regularPrice"]) ? $data["regularPrice"] / 100 : null,
"salePrice" => isset($data["salePrice"]) ? $data["salePrice"] / 100 : null,
"loyaltyPrice" => isset($data["loyaltyPrice"]) ? $data["loyaltyPrice"] / 100 : null,
"shownPrice" => isset($data["shownPrice"]) ? $data["shownPrice"] / 100 : null,
"image" => $data["images"][0]["urls"]
);
//print_r($data);
// indirim var mı yok mu?
if( $data["regularPrice"] != $data["shownPrice"] ){
echo "indirim var
";
$indirim = 1;
$data["discountRate"] = $data["discountRate"];
$new_price = $product['shownPrice'];
$saleprice = $product['regularPrice'];
}else{
echo "indirim yok
";
$indirim = 0;
$data["discountRate"] = NULL;
$saleprice = $product['salePrice'];
$new_price = NULL;
}
if($data["sku"] == NULL){
echo "SKU YOK veya 404"."
";
// 404 mü?
return array(
"indirim" => "",
"success" => 0,
"normal_fiyat" => "",
"indirimli_fiyat" => "",
"indirim_yuzde" => "",
"stok" => 0,
"404" => 1
);
}else{
if($product['status'] == "IN_SALE"){
echo "ÜRÜN VAR SATIŞ VAR"."
";
return array(
"indirim" => $indirim,
"success" => 1,
"normal_fiyat" => sayiduzenle(trim($saleprice)),
"indirimli_fiyat" => sayiduzenle(trim($new_price)),
"indirim_yuzde" => $data["discountRate"],
"stok" => 1,
"404" => 0
);
}
if($product['status'] == "STOCK_OUT"){
echo "ÜRÜN VAR SATIŞ YOK"."
";
return array(
"indirim" => NULL,
"success" => 1,
"normal_fiyat" => NULL,
"indirimli_fiyat" => NULL,
"indirim_yuzde" => NULL,
"stok" => 0,
"404" => 0
);
}
echo "
";
}
echo "else else var"."
";
}
}