E0033 reports intdiv() calls whose divisor can be zero. It is the
intdiv()-by-zero member of Phanalist’s bounded formal verification family
(E0031-E0043). The family shares a Z3-backed engine that encodes path conditions
and values, so a finding comes with a solver-backed counterexample rather than a
heuristic guess.
intdiv($value, 0) and intdiv($value, $divisor) where $divisor can be zeroif, switch, match, short-circuit &&, and
try/catch/finally pathsE0033 shares the model limits, loop bounds, and interprocedural behavior described in E0031.
rules:
E0033:
php_version: "8.4"
check_intdiv: true
See E0031 for the shared model limits, unknown_policy behavior, and
per-code configuration.