(PHP 5 >= 5.2.0, PHP 7, PHP 8)
filter_var — Belirtilen süzgeçle bir değişkeni süzer
Bir değişkeni
FILTER_VALIDATE_*
doğrulama süzgeçleri,
FILTER_SANITIZE_*
temizleme süzgeçleri veya özel bir süzgeç kullanarak süzer.
değerSayıl değerler süzülmeden önce dahili olarak dizgeye dönüştürülür.
süzgeçFILTER_VALIDATE_*
sabitlerinden biri kullanılarak bir doğrulama süzgeci,
FILTER_SANITIZE_*
sabitlerinden biri ya da FILTER_UNSAFE_RAW
kullanılarak bir temizleme süzgeci veya
FILTER_CALLBACK kullanılarak özel bir süzgeç
olabilir.
Bilginize: Öntanımlı değer,
FILTER_UNSAFE_RAWsabitinin takma adı olanFILTER_DEFAULT'tur. Bu, öntanımlı olarak hiçbir süzgecin uygulanmaması ile sonuçlanır.
seçeneklerFILTER_FLAG_*
süzgeç bayrak sabitlerinden oluşan bir bit maskesi.
Eğer süzgeç seçenekleri kabul ediyorsa,
bayraklar dizinin "flags" alanı kullanılarak
sağlanabilir.
Başarı durumunda süzülen veriyi döndürür.
Başarısızlık durumunda false döndürülür; ancak
FILTER_NULL_ON_FAILURE bayrağı kullanıldığında
null döndürülür.
Örnek 1 filter_var() örneği
<?php
var_dump(filter_var('bob@example.com', FILTER_VALIDATE_EMAIL));
var_dump(filter_var('https://example.com', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));
?>Yukarıdaki örneğin çıktısı:
string(15) "bob@example.com" bool(false)
Örnek 2 Bir dizinin elemanlarını doğrulama örneği
<?php
$emails = [
"bob@example.com",
"test@example.local",
"invalidemail"
];
var_dump(filter_var($emails, FILTER_VALIDATE_EMAIL, FILTER_REQUIRE_ARRAY));
?>Yukarıdaki örneğin çıktısı:
array(3) {
[0]=>
string(15) "bob@example.com"
[1]=>
string(18) "test@example.local"
[2]=>
bool(false)
}
Örnek 3 seçenekler bağımsız değişkenine bir dizi aktarma örneği
<?php
$options = [
'options' => [
'min_range' => 10,
],
'flags' => FILTER_FLAG_ALLOW_OCTAL,
];
var_dump(filter_var('0755', FILTER_VALIDATE_INT, $options));
var_dump(filter_var('011', FILTER_VALIDATE_INT, $options));
?>Yukarıdaki örneğin çıktısı:
int(493) bool(false)
Örnek 4 Bayrakların doğrudan veya bir array ile sağlanması
<?php
$str = 'string';
var_dump(filter_var($str, FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE));
var_dump(filter_var($str, FILTER_VALIDATE_BOOLEAN, ['flags' => FILTER_NULL_ON_FAILURE]));
?>Yukarıdaki örneğin çıktısı:
NULL NULL
FILTER_VALIDATE_*
FILTER_SANITIZE_*