(PHP 4, PHP 5, PHP 7, PHP 8)
bcmul — Multiplikation zweier Zahlen beliebiger Genauigkeit
Multipliziert num1 mit num2.
num1Der linke Operand als Zeichenkette.
num2Der rechte Operand als Zeichenkette.
scale
Dieser Parameter wird verwendet, um die Anzahl der Nachkommastellen im
Ergebnis festzulegen.
Falls null, wird die mit bcscale() definierte
Standard-Genauigkeit verwendet oder auf den Wert der INI-Direktive
bcmath.scale
zurückgegriffen.
Gibt das Ergebnis als Zeichenkette zurück.
Diese Funktion löst in den folgenden Fällen einen ValueError aus:
num1 oder num2
ist keine wohlgeformte numerische BCMath-Zeichenkette.
scale liegt außerhalb des gültigen Bereichs.
| Version | Beschreibung |
|---|---|
| 8.0.0 |
scale ist jetzt nullbar.
|
| 7.3.0 | bcmul() liefert nun Zahlen mit den angeforderten Nachkommastellen zurück. Zuvor haben die zurückgelieferten Zahlen möglicherweise abschließende Dezimalnullen ausgelassen. |
Beispiel #1 bcmul()-Beispiel
<?php
echo bcmul('1.34747474747', '35', 3); // 47.161
echo bcmul('2', '4'); // 8
?>Hinweis:
Vor PHP 7.3.0 kann bcmul() ein Ergebnis mit weniger Nachkommastellen zurückgeben, als der Parameter
scaleangibt. Dies geschieht nur, wenn das Ergebnis nicht die gesamte durchscaleerlaubte Genauigkeit erfordert. Zum Beispiel:Beispiel #2 bcmul()-Nachkommastellen-Beispiel
<?php echo bcmul('5', '2', 2); // gibt "10" aus, nicht "10.00" ?>