latte zaokrouhlení na 2 desetinná místa

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
motorcb
Člen | 552
+
0
-

Zdravim.
V databázi mám float a v některých případech bych ho chtěl vypsat v uživatelsky přívětivé formě.
To znamená, vypsat zaokrouhlený na 2 desetinná místa. Existuje v latte nějaká možnost zaokrouhlení?
Děkuji za info

xciza
Člen | 194
+
0
-

Jde také nějak prosím zaokrouhlovat na stovky či desítky?

Filip Procházka
Moderator | 4668
+
0
-
{=round($num / 100)*100}

Chtělo by to asi taky helper :)

Nox
Člen | 378
+
0
-

https://api.nette.org/…ers.php.html#48
http://cz2.php.net/…r-format.php
→ ne, leda vlastní helper / helperloader – to se stejně hodí, viz https://latte.nette.org/en/develop#…

enumag
Člen | 2118
+
0
-

@HosipLan:

{=round($num, 2)}
h4kuna
Backer | 740
+
0
-

enumag napsal(a):

@HosipLan:

{=round($num, 2)}

To co psal @Hosiplan zaokrouhluje správně podle požadavku na stovky to tvoje na setiny.

<?php
$num = 1153.361;
echo round($num, 2); // 1153.36
echo round($num / 100)*100; // 1200
?>

Editoval h4kuna (24. 10. 2012 21:52)

h4kuna
Backer | 740
+
0
-

Na stovky/desítky toto není, ale používám vlastní helper na formátování čísel

Oproti standardnímu v nette má výhodu že to je objekt ten jednou nastavíš a máš vyhráno, doplňuje nedělitelnou mezeru a je-li to potřeba odstraní nuly zprava za desetinou čárkou. Přidat mu symbol a můžeš mít helper na procenta a jiný helper na měnu.

Majkl578
Moderator | 1364
+
0
-

Funkce round podporuje i zápornou hodnotu precision.

$number = 123456;
echo round($number, -2); // 123500
enumag
Člen | 2118
+
0
-

h4kuna napsal(a):

To co psal @Hosiplan zaokrouhluje správně podle požadavku na stovky to tvoje na setiny.

Jo, máš pravdu, chtěl jsem napsat –2. Viz příspěvek Majkl578.