In erster Linie habe ich SO gesucht, und hatte nicht viel Glück mit den anderen Vorschlägen, oder ich verstehe nicht wegen der Komplexität der OP-Frage.Funktionen werfen Division durch Null Fehler
Ich habe zwei Funktionen, die Division Zero Warnungen werfen.
Wie würde ich das lösen? Ich habe versucht, die Logik mit isset(), empty() zu validieren, aber es scheint immer noch zu sein.
Kann mir jemand erklären, wo ich falsch liege?
schätze ich jegliche Hilfe :)
function roundUpToAny($MaterialCountNeeded, $CoverageMinimum) {
if (!isset($MaterialCountNeeded) AND !isset($CoverageMinimum)) {
$ReturnedValue = 0;
}
if ($MaterialCountNeeded === 0 & $CoverageMinimum === 0 || $CoverageMinimum === 0) {
$ReturnedValue = 0;
}
else {
$ReturnedValue = (ceil($MaterialCountNeeded) % $CoverageMinimum === 0) ? ceil($MaterialCountNeeded) : round(($MaterialCountNeeded + $CoverageMinimum/2)/$CoverageMinimum) * $CoverageMinimum;
}
return $ReturnedValue;
}
function SumQuantityNeeded($Count, $Coverage) {
if ($Count > 0) {
$OrderMaterialCount = roundUpToAny($Count, $Coverage);
$MinimumUnitAmount = $OrderMaterialCount/$Coverage;
return round($MinimumUnitAmount,$Coverage);
} else {
return $MinimumUnitAmount = 0;
}
}
Fehler treten aus MinimumUnitAmount = $OrderMaterialCount/$Coverage;
und $ReturnedValue = (ceil($MaterialCountNeeded) % $CoverageMinimum === 0) ? ceil($MaterialCountNeeded) : round(($MaterialCountNeeded + $CoverageMinimum/2)/$CoverageMinimum) * $CoverageMinimum;
Diese Funktionen sind Funktionen 'Helfer'. Andere Funktionen verwenden diese, so dass ich in den falschen Eimer schauen kann ...
Was ist der Wert, den Sie an 'SumQuantityNeeded()' für '$ Coverage' übergeben, und was würde passieren, wenn dieser Wert eine 0 wäre? –