Umpire DB<p><a href="https://mstdn.plus/tags/PHP" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>PHP</span></a> operations on <a href="https://mstdn.plus/tags/mysqli" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>mysqli</span></a> are a treat. They return either the expected object, or a true/false boolean. <br> <br>Connection fails? Boolean. Succeeds? Connection object. Preparing an <a href="https://mstdn.plus/tags/SQL" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SQL</span></a> statement fails? Boolean. Succeeds? Statement object. Binding parameters to prepared statement fails? Boolean. Succeeds? Boolean. Executing the statement fails? Boolean. Succeeds? Boolean as well, or an associative array, depending on intent. <br> <br>And thanks.</p>