logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[PHP] Jak w PHP wyświetlić liczbę float z zerem po przecinku, np. 14.0?

jarekryzyko 09 Wrz 2007 22:17 5598 4
REKLAMA
  • #1 4267633
    jarekryzyko
    Poziom 12  
    Posty: 59
    Pomógł: 2
    Ocena: 9
    Witam, mam pewien problem:
    Do zmiennej $Z pobieram całkowitą (bez cyfr po przecinku) liczbę float pobraną z bazy danych. Zmienną $Z konwertuję na float:
    settype($Z, "float");
    Jest to liczba całkowita, więc wyświetla mi ją jako np. 14.
    Jak zrobić, aby program w PHP wyświetlał tą liczbę tak: 14.0?
    W delphi jest funkcja format(), ale nie wiem czy w php też jest coś podobnego i jak tego użyć.
    Pozdrawiam.

    P.S. Jeżeli już był podobny temat na forum, to przepraszam. Szukałem przez minut i nie znalazłem odpowiedzi na moje pytanie, również na googlach :)
  • REKLAMA
  • #2 4267794
    krzychoocpp
    VIP Zasłużony dla elektroda
    Posty: 1866
    Pomógł: 387
    Ocena: 58
    Witam, jeśli każda liczba będzie miała .0 to może prościej będzie po prostu je dopisać:

    Jeśli nie, można użyć funkcji printf.

    Pozdrawiam, Krzysztof.
  • REKLAMA
  • #3 4267886
    jarekryzyko
    Poziom 12  
    Posty: 59
    Pomógł: 2
    Ocena: 9
    Nie zrozumiałeś mnie. Chodzi mi o to, żeby zawsze wyświetliło mi liczbę z jednym miejscem po przecinku, nie ważne czy odczytam liczbę 10.5 czy 10, zawsze ma wyświetlić (choćby zero) cyfrę po przecinku.

    Tak jak jest w C++ tylko przetłumaczyć to na PHP:
    FormatFloat("#.##", zmienna);
  • REKLAMA
  • Pomocny post
    #4 4267902
    krzychoocpp
    VIP Zasłużony dla elektroda
    Posty: 1866
    Pomógł: 387
    Ocena: 58
    Zrozumiałem ;) Właśnie do tego służy funkcja printf o której napisałem. Trzeba określić format na float i precyzję na jedną liczbę. Na stronie manuala funkcji printf jest link do sprintf gdzie formatowanie jest dokładnie opisane.

    Pozdrawiam, Krzysztof.
  • #5 4268055
    jarekryzyko
    Poziom 12  
    Posty: 59
    Pomógł: 2
    Ocena: 9
    Dzięki, tego szukałem. Sorka za poprzedni post, poprostu nie zrozumiałem działania funkcji. Jakby ktoś jeszcze miał ten problem to podaję przykład:
    echo sprintf("%01.2f", 123.1); // "123.10"

    Pozdrawiam.
REKLAMA