AC_GetAggregatedValues -> Kommatrennzeichen "," -> "."

Das Test-Skript:


setlocale(LC_ALL, 'en_US');  
$s = number_format(AC_GetAggregatedValues(16940, 23213, 6, mktime(0, 0, 0, 9, 3, 2017), mktime(23, 59, 59, 9, 3, 2017), 0),2,'.','');
print_r ($s);

ergibt leider als Werte solche mit Komma und nicht Punkt als Dezeimaltrennzeichen (Änderung von IPS 3.x → 4.x)
Ich benötige aber zwingend einen Punkt.

 number_format 

geht nicht, da AC_GetAggregatedValues einen array und keinen float zurück gibt.


setlocale(LC_ALL, 'en_US');  

macht keinen Unterschied…

Wie kann ich das Skript zwingen, einen Punkt zu generieren, anstelle des Kommas?

setlocale würde ich nicht verwenden, da dies einige unschöne Nebenwirkungen haben haben kann.

number_format kannst du nutzen; Du musst aber beachten, dass du dies nicht auf das Array, sondern auf alle Elemente des Array und dort jeweils die Wertespalten (=Avg, …) anwenden musst. Einfacher ist also das number_format dort direkt zu setzen, wo du den Punkt statt dem Komma benötigst.

paresy

So habe ich es jetzt gemacht, war ein bisschen Arbeit weil an vielen Stellen benötigt, aber jetzt geht es. Danke Paresy.