[PHP] - 'unwichtige' Nullen in einer SQL-Decimal entfernen
Übersicht

![]() |
EingeproggtBetreff: [PHP] - 'unwichtige' Nullen in einer SQL-Decimal entfernen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Servus,
Durch den einen oder anderen Beitrag hier bin ich auf die Idee gekommen mal wieder mein Lieblingsforum der letzten 8 Jahre zu bemühen ![]() Meine Frage ist an sich schon hier gestellt und geklärt: http://stackoverflow.com/quest...als-in-php Allerdings bin ich unglücklich mit den Lösungen. Ich habe in der Datenbank Daten vom Typ Decimal(10,6). Wenn ich sie mit "floatval" und ähnlichem caste, erhalte ich irgendwann die Darstellung àla 1.0E-5 - das sieht man natürlich nicht gerne solange man kein Mathematiker / Programmierer ist. Nehme ich die Lösung mit rtrim($x,'0.') wird, wie in der Diskussion bemerkt, zB 100 zu 1. Es ist mir natürlich möglich, das gewünschte Verhalten selbst umzusetzen (mit ner for-schleife, indem ich nach der Position des Komma suche etc.). Aber das erscheint mir eine "dumme Lösung". Kennt jemand eine "intelligente"? Also zusammen gefasst, ich will folgendes Verhalten: Code: [AUSKLAPPEN] echo cleanNumber('125.00'); // 125
echo cleanNumber('966.70'); // 966.7 echo cleanNumber(844.011); // 844.011 echo cleanNumber(100); // 100 echo cleanNumber('0.00001'); // 0.00001 mfG, Christoph |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
- Zuletzt bearbeitet von Eingeproggt am Do, Feb 12, 2015 19:09, insgesamt einmal bearbeitet
![]() |
DAK |
![]() Antworten mit Zitat ![]() |
---|---|---|
Regex-Replace schon probiert?
Code: [AUSKLAPPEN] $x = '100.10';
$x = preg_replace("/\.?0*$/",'',$x); echo $x; |
||
Gewinner der 6. und der 68. BlitzCodeCompo |
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke, ist gekauft ![]() Weiß auch nicht warum ich nach so vielen Jahren noch immer so unfähig mit Regex bin ![]() Meinen gepfuschten Versuch möcht ich euch aber nicht vorenthalten: Code: [AUSKLAPPEN] public function formatMenge($val) {
/* $pos = strpos($val,'.'); if ($pos) { $a = intval($val); $b = substr($val, $pos); $b = rtrim($b,'0.'); $val = $a.$b; } */ //Danke DAK ;) //http://www.blitzforum.de/forum/viewtopic.php?p=414568#414568 $val = preg_replace("/\.?0*$/",'',$val); return $val; } mfG, Christoph |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
DAK |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hehe^^ Kommt das so in Production?^^
Regex sind mächtig, wenn es um sowas geht^^ Tu mir den Gefallen und upvote meine Antwort auf Stackoverflow (ich heiß dort Dakkaron) ![]() Es zahlt sich echt aus, sich mit denen auseinander zu setzen. Ich sollt glatt mal eine Regex-Implementierung für BB machen. |
||
Gewinner der 6. und der 68. BlitzCodeCompo |
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Klar, das kommt so in Production ![]() Und ja, Regex in BB wäre schon was nützliches und gibts noch nicht (zumindest nicht in der deutschen Community? Hab nicht auf bb.com geschaut). Aber da sind wir wieder beim Thema "stirbt BB?", wer würde denn eine Regex-Implementierung in BB noch nutzen? mfG, Christoph |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
DAK |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hast leider wohl auch wieder recht... | ||
Gewinner der 6. und der 68. BlitzCodeCompo |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group