sprintf('%.4f', "250.2000"); ödüllü php sorusu (300₺)
14
●832
- 14-08-2023, 11:55:46bakiye değerini string olarak gönderip alın matematiksel işlemler için floatval fonksiyonunu kullanın.Batuhan Ustun adlı üyeden alıntı: mesajı görüntüle
$var="10.0000";
sayısal işlem yapmak için floatval($var);
sonra tekrar float to string e dönmek için
number_format($value, 4, '.', ''); kullanabilirsiniz. - 14-08-2023, 11:57:20Sistemin icinde PHP Engine bazinda (Zend) bahsettiginiz olayin direkt bir cozumu yok, bahsettiginiz islemi 100.000'lik parcalara bolerek ya da carparak yapmaniz nihai cozum olur ya da string olarak mysql uzerinde tutup bcmath kutuphanesini de kullanabilirsiniz ancak bu benim onerecegim bir cozum olmaz.
Ilk durum icinse virgulden sonra 5 basamaga ihtiyaciniz oldugunu dusunerek 612.60000 seklinde bir sayimiz oldugunu dusunelim ve bunu insert ederken 100 binle carpip insert edelim, select'te ise 100 bine bolerek getirelim. - 14-08-2023, 12:14:42Maalesef gelen mesajlar doğrultusun da denedik fakat bunun PHP davranışına uygun olmayan bir istek olduğunu anladık. Herhangi bir çözümü yok sanırım bu konunun.marzenbecher adlı üyeden alıntı: mesajı görüntüle
- 14-08-2023, 14:26:16sonunda ek olarak 1 eklersen 10.000001 sorunun çözülebilir hale gelebilir. o 1i tekrar kaldıracaksın işlemler sonrası tam olarak ne yaptığını anlamadım ama nokta sonrası bölümüde ayrıca temp alanına ayırıp işlem sonrası sol tarafa ekleyebilirsin. 10,000001 hesap makinesine virgül koyup 1 ekleyince sıfırları kesmiyor çarpıya vs basınca.