例如,我想檢查一個陣列的值是電子郵件地址還是適合正則運算式。
如果有兩個過濾器可以一起做我想要的:
- 是否可以使用這兩個現有的過濾器,如果第一個不適合,請檢查第二個是否適合?
- 還是我必須創建一個過濾器callbac?
創建用例:登錄情況,您可以使用電子郵件地址或用戶名,但兩者的輸入欄位相同。
偽代碼:
$options = [
'username' =>
[
'options' => [
'filter' => FILTER_VALIDATE_EMAIL | FILTER_VALIDATE_REGEXP,
'regexp' => '/([A-Za-z0-9_-]{1,25})/'],
],
];
$filteredPost = filter_input_array(INPUT_POST, $options);
如果這樣的事情是可能的,怎么辦?
uj5u.com熱心網友回復:
我不認為你可以像這樣組合多個過濾器——你只能|用來組合一個帶有標志的過濾器。
此外,您還沒有正確形成選項陣列。正則運算式需要進一步嵌套。
$options = [
'username' => [
'filter' => FILTER_VALIDATE_EMAIL | FILTER_VALIDATE_REGEXP,
'options' => [
'regexp' => '/([A-Za-z0-9_-]{1,25})/'],
],
];
的每個元素都是一個包含和鍵$options的陣列。filteroptions
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/409952.html
標籤:
