1
使用filter_var_array
和FILTER_CALLBACK
時,有沒有辦法定義默認值(或強制每次調用回調)?使用默認值的PHP過濾回調
實施例的數據:
{
"name": "John"
}
實例:
$params = filter_var_array($datas_from_above, [
'name' => FILTER_SANITIZE_STRING,
'age' => [
'filter' => FILTER_CALLBACK,
'options' => function ($data) {
// I was thinking $data would be null here
// but this function is not called if the
// param is not present in the input array.
die('stop?');
}
]
], true); // Add missing keys as NULL to the return value
當使用其它的過濾器,還有的default
選項。因此,回調過濾器的默認值不應該超自然。我錯過了明顯的東西嗎?
感謝
不認爲這是可能的。它應該過濾現有的數據,而不是無中生有...... – Narf
看來你是對的。缺省值僅在驗證程序(布爾,int等)不驗證輸入時纔有效。如果輸入不在這裏(即使TRUE是filter_var_array的3參數)。謝謝 – rekam