• 03-10-2019, 17:49:31
    #1
    Merhaba arkadaşlar, jquery ile sayıyı "100.000,30" bu formatta girdiriyorum. PHP bunu string olarak algıladığından, toplama, çarpma gibi işlemleri yapmıyor. Ben nasıl bunu normal bi sayı olarak algılatıp, "100.500,30" x 2 dediğimde "100.000,60" sonucunu alırım veya + "0,90" dediğimde 90 kuruşu üzerine ekler?

    Çözüm:

    <?php
    
    function sayiDuzenle($sayi){
    $sayi = str_replace('.','',$sayi);
    $sayi = str_replace(',','.',$sayi);
    
    return $sayi;
    }
    
    $say_1 = sayiDuzenle('100.500,30');
    $say_2 = 2;
    
    $sonuc = floatval($say_1) * $say_2;
    
    echo number_format($sonuc,2);
    ?>
    [/QUOTE]
  • 03-10-2019, 17:53:19
    #2
    $sayı = 1234.56;

    // İngilizcedeki gösterim (öntanımlı)
    $english_format_number = number_format($sayı);
    // 1,235

    // Bizimki
    $bizimki = number_format($sayı, 2, ',', '.');
    // 1.234,56

    kaynak : php.net
  • 03-10-2019, 17:56:58
    #3
    asiminnesli adlı üyeden alıntı: mesajı görüntüle
    $sayı = 1234.56;

    // İngilizcedeki gösterim (öntanımlı)
    $english_format_number = number_format($sayı);
    // 1,235

    // Bizimki
    $bizimki = number_format($sayı, 2, ',', '.');
    // 1.234,56

    kaynak : php.net
    Bunu bende denemiştim, aynı hatayı alıyorum

     A non well formed numeric value encountered
  • 03-10-2019, 18:51:38
    #4
    Tonks adlı üyeden alıntı: mesajı görüntüle
    Merhaba arkadaşlar, jquery ile sayıyı "100.000,30" bu formatta girdiriyorum. PHP bunu string olarak algıladığından, toplama, çarpma gibi işlemleri yapmıyor. Ben nasıl bunu normal bi sayı olarak algılatıp, "100.500,30" x 2 dediğimde "100.000,60" sonucunu alırım veya + "0,90" dediğimde 90 kuruşu üzerine ekler?


    <?php
    
    function sayiDuzenle($sayi){
        $sayi = str_replace('.','',$sayi);
        $sayi = str_replace(',','.',$sayi);
    
        return $sayi;
    }
    
    $say_1 = sayiDuzenle('100.500,30');
    $say_2 = 2;
    
    $sonuc = floatval($say_1) * $say_2;
    
    echo number_format($sonuc,2);
    ?>
  • 03-10-2019, 19:12:09
    #5
    ustunweb adlı üyeden alıntı: mesajı görüntüle

    <?php
    
    function sayiDuzenle($sayi){
        $sayi = str_replace('.','',$sayi);
        $sayi = str_replace(',','.',$sayi);
    
        return $sayi;
    }
    
    $say_1 = sayiDuzenle('100.500,30');
    $say_2 = 2;
    
    $sonuc = floatval($say_1) * $say_2;
    
    echo number_format($sonuc,2);
    ?>
    Bu işe yaradı, teşekkürler.