(PHP 4, PHP 5, PHP 7, PHP 8)
bcmod — Modulo zweier Zahlen mit beliebiger Genauigkeit
Liefert den Rest der Division von num1 durch
num2.
Das Ergnis hat dasselbe Vorzeichen wie num1.
num1Der linke Operand als Zeichenkette.
num2Der rechte Operand als Zeichenkette.
scalenull, wird die mit bcscale() definierte
Standard-Genauigkeit verwendet oder auf den Wert der INI-Direktive
bcmath.scale
zurückgegriffen.
Gibt den Modulo 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.
Wenn num2 0 ist, löst diese
Funktion eine DivisionByZeroError-Exception
aus.
| Version | Beschreibung |
|---|---|
| 8.0.0 |
scale ist jetzt nullbar.
|
| 8.0.0 |
Die Division durch 0 löst nun eine
DivisionByZeroError-Exception aus,
anstatt null zurückzugeben.
|
| 7.2.0 |
num1 und num2 werden
nicht länger zu einer Ganzzahl abgeschnitten, so dass nun das Verhalten
von bcmod() eher fmod() statt dem
% Operator entspricht.
|
| 7.2.0 |
Der Parameter scale wurde hinzugefügt.
|
Beispiel #1 bcmod()-Beispiel
<?php
bcscale(0);
echo bcmod( '5', '3'); // 2
echo bcmod( '5', '-3'); // 2
echo bcmod('-5', '3'); // -2
echo bcmod('-5', '-3'); // -2
?>Beispiel #2 bcmod() mit Dezimalzahlen
<?php
bcscale(1);
echo bcmod('5.7', '1.3'); // 0.5 von PHP 7.2.0 an; 0 zuvor
?>