<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 這部分代碼與文章內容無關,可以放一些初始化或者說明</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"文章即將開始…"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
<h1>如何在 PHP 中結合 <code>is_bool這裡的FILTER_VALIDATE_BOOLEAN會將輸入值解析為布爾值,如果用戶提交了“ true ”、“ 1 ”、“on” 或“yes” 會返回true ,否則返回false 。
儘管filter_input可以將輸入轉換為布爾值,但有時我們還希望確保變量的類型確實是布爾值。 is_bool可以幫助我們做這個檢查:
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_bool</span></span><span>(</span><span><span class="hljs-variable">$subscribe</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"輸入是布爾值: "</span></span><span> . (</span><span><span class="hljs-variable">$subscribe</span></span><span> ? </span><span><span class="hljs-string">'true'</span></span><span> : </span><span><span class="hljs-string">'false'</span></span><span>);
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"輸入不是布爾值"</span></span><span>;
}
結合filter_input與is_bool ,可以實現既安全又精確的布爾值處理。
<?php
</span><span><span class="hljs-variable">$subscribe</span></span><span> = </span><span><span class="hljs-title function_ invoke__">filter_input</span></span><span>(INPUT_POST, </span><span><span class="hljs-string">'subscribe'</span></span><span>, FILTER_VALIDATE_BOOLEAN);
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_bool</span></span><span>(</span><span><span class="hljs-variable">$subscribe</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"用戶訂閱狀態: "</span></span><span> . (</span><span><span class="hljs-variable">$subscribe</span></span><span> ? </span><span><span class="hljs-string">'已訂閱'</span></span><span> : </span><span><span class="hljs-string">'未訂閱'</span></span><span>);
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"未能獲取有效的布爾值"</span></span><span>;
}
?>
通過這種方式,你可以安全地從用戶輸入中獲取布爾值,並在後續邏輯中直接使用,而無需擔心類型錯誤。
通過上述方法,PHP 開發者可以更輕鬆地處理用戶輸入的布爾數據,同時保證代碼的健壯性和安全性。