• 20-07-2015, 11:51:44
    #1
    Üyeliği durduruldu
    Merhaba arkadaşlar aşağıdaki gibi bir işlemim var, bu kod ile gelen fiyat değerini taksitlere göre böldürmek ve ekrana yazdırmak istiyorum, fakat fiyat noktalı şekilde geldiği için (2.950) istediğim sonucu alamıyorum, substr ile bunu nasıl yaparım. Burada noktayı görmeden fiyat değerini alıp çıkan sonucu böldürmek istiyorum,

    örnek çalışma
    <?php
    $price = '2950';  // gelen fiyat 2.950 gibi noktalı geliyor.
    $taksit1 = '1';
    $taksit2 = '2';
    $taksit3 = '3';
    $taksit4 = '4';
    $taksit5 = '5';
    $taksit6 = '6';
    $taksit7 = '7';
    $taksit8 = '8';
    $taksit9 = '9';
     
    $sonuc1 = $price / $taksit1;
    $sonuc2 = $price / $taksit2;
    $sonuc3 = $price / $taksit3;
    $sonuc4 = $price / $taksit4;
    $sonuc5 = $price / $taksit5;
    $sonuc6 = $price / $taksit6;
    $sonuc7 = $price / $taksit7;
    $sonuc8 = $price / $taksit8;
    $sonuc9 = $price / $taksit9;
    
     
    
    echo round($sonuc1) ."<br>". round($sonuc2) ."<br>". round($sonuc3) ."<br>". round($sonuc4) ."<br>". round($sonuc5) ."<br>". round($sonuc6) ."<br>". round($sonuc7) ."<br>". round($sonuc8) ."<br>". round($sonuc9);
    ?>
  • 20-07-2015, 11:53:28
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Hocam yuvarlayabilirsiniz round(); ile.
  • 20-07-2015, 12:04:33
    #3
    Üyeliği durduruldu
    Karakurt adlı üyeden alıntı: mesajı görüntüle
    Hocam yuvarlayabilirsiniz round(); ile.

    Hocam gördüğünüz gibi yuvarlamayı zaten yapıyorum sorunum o değil,

    Gelen fiyat değeri 2(.)950 şeklinde noktalı geliyor 2950 şeklinde gelmiyor, bunu kodda 2950 şeklinde göstererek yani noktayı sildirerek yazdırmam gerekli ki bölme işlemini doğru şekilde yapsın diğer türlü tam sayı olarak algılamıyor ve bölme işlemini doğru yapmıyor yani istediğim şekli ile yapmıyor,
  • 20-07-2015, 12:04:35
    #4
    Öncelikle gelen fiyattaki binlik ve ondalik ayraci olarak ne kullaniyorsunuz. Php de . ondalik ayraci , ise binlik ayracidir. Gelen verinizde str_replace gibi fonksiyonlarla bu ayraclari donusturun, daha sonra str2float parser ile virgullu sayiya donusturun ve bolme islemlerini ondan sonra yapin.

    En son veriyi gondermeden once tekrar stringe donusturun ve istediginiz ondalik ayraci ile bolerek geri gonderin.
  • 20-07-2015, 13:05:46
    #5
    Kimlik doğrulama veya yönetimden onay bekliyor.
    2.950 olarak değilde direk 2950 olarak değer almak istiyor iseniz.
    $price = '2.950';
    $cikti = str_replace( '.', '', $price);
    
    echo $cikti;
    Yaparak price değişkeni içinde bulunan noktayı ortadan kaldırıp direk olarak 2950 olarak atayabilirsin. Umarım anlatmak istediğin budur
  • 20-07-2015, 13:10:46
    #6
    sercander doğru demiş str_replace kullana bilirsin.
  • 20-07-2015, 13:20:25
    #7
    Üyeliği durduruldu
    sercander adlı üyeden alıntı: mesajı görüntüle
    2.950 olarak değilde direk 2950 olarak değer almak istiyor iseniz.
    $price = '2.950';
    $cikti = str_replace( '.', '', $price);
    
    echo $cikti;
    Yaparak price değişkeni içinde bulunan noktayı ortadan kaldırıp direk olarak 2950 olarak atayabilirsin. Umarım anlatmak istediğin budur

    Evet, teşekkür ederim bu benim için yeterli bir öneri başarılı şekilde çalışıyor da,
  • 20-07-2015, 13:22:06
    #8
    Bende teşekkür ederim kolay gelsin.
  • 20-07-2015, 13:25:06
    #9
    Üyeliği durduruldu
    sercander adlı üyeden alıntı: mesajı görüntüle
    Bende teşekkür ederim kolay gelsin.
    bu soruma paralel olarak çıkan sonuçlarda örneğin 2 takit olarak 1475 bu şekilde bir değer alıyorum bunu yazdırırken ekrana 1.475 olarak nasıl yazdırırım.