Der Ausdruck Format Sie versuchen, ist diese verwenden:
($row['OK_05']/$row['TotalMatch']) * 100
Also je nachdem, was Sie rund um das gehen zu entscheiden Bedürfnisse Funktion nutzen zu können Ausdruck.
Für die zu verwendende Funktion müssen Sie eine auswählen, die eine Zeichenfolge zurückgibt, kein Float.
Wenn Sie round
verwenden und Ihr Ausdruck einen Gleitkommawert zurückgibt, der auf eine Zahl mit zwei Nullen nach dem Komma rundet, werden die abschließenden Nullen nicht im Ergebnis angezeigt. Beispiel: echo round(92.0006829268, 2)
zeigt 92
, nicht92.00
an. Verwenden Sie daher nicht round
, wenn Sie sicherstellen müssen, dass immer zwei Dezimalstellen angezeigt werden. round
ist eine mathematische Funktion, keine Formatierungsfunktion.
floor
ist wirklich überhaupt nicht nützlich, da es eine Zahl ohne Dezimalstellen zurückgibt.
Ein einfacher Weg ist sprintf
zu verwenden, wie in einigen der anderen Antworten gezeigt.
echo sprintf("%.2f", ($row['OK_05']/$row['TotalMatch']) * 100);
Das erste Argument ist sprintf
"%.2f"
, welche eine Format-String ist, der anzeigt, dass das zweite Argument als Schwimmer mit zwei Dezimalstellen angezeigt werden sollen. Das zweite Argument ist dein Ausdruck.
Die Verwendung von bcdiv
wie in der anderen Antwort vorgeschlagen funktioniert auch, aber es funktioniert ein wenig anders, sprintf
und wird in einigen Fällen ein etwas anderes Ergebnis produzieren.
sprintf
rundet auf die Anzahl der Dezimalstellen angegeben, so zum Beispiel
echo sprintf("%.2f", 926.89/10); // outputs 92.69
und bcdiv
statt gestutzt werden, so
echo bcdiv(926.89, 10, 2); // outputs 92.68
Unabhängig davon, welche eines dieser Werke für Sie tun.
_round (92.682926829268, ** 2 **); _ sollte dein Freund sein –
* aber ich bekomme nicht, was ich will * - Bitte erarbeiten. Wir können deine Gedanken nicht lesen. – Mike
Ja, was _do_ bekommen Sie? Der Code in Ihrer Frage enthält keine Etage oder Runde. Wenn Sie zeigen können, was Sie mit diesen Funktionen gemacht haben, kann Ihnen jemand sagen, warum es Ihnen nicht das gewünschte Ergebnis gebracht hat. –