Diskon kelas baru hingga 25%! Masukkan kupon "lebihcepat" di kelas ini

X
Logo Koala Skodev mengetik

Skodev

Belajar coding dalam bahasa Indonesia

FILTER_VAR

Pelajari penggunaan filter_var dalam PHP untuk memvalidasi dan menyaring data dengan mudah. Artikel ini memberikan penjelasan dan contoh yang akan membantu Anda memahami cara kerjanya.

Dalam pemrograman PHP, memastikan bahwa data yang dimasukkan oleh pengguna adalah valid dan aman adalah hal yang sangat penting. filter_var adalah fungsi bawaan PHP yang memudahkan proses validasi dan penyaringan data. Fungsi ini dapat digunakan untuk mengecek apakah input tersebut memenuhi kriteria tertentu, seperti apakah sebuah string adalah alamat email yang valid atau bukan.

Menggunakan filter_var()

Fungsi filter_var menggunakan dua argumen utama: variabel yang akan difilter dan jenis filter yang akan diterapkan. PHP menyediakan filter khusus yang bisa dipilih sesuai kebutuhan.

Sintaks dasar:

filter_var(variable, filter, options)
  • variable adalah nilai yang akan diperiksa.
  • filter adalah jenis filter yang akan digunakan (cth: FILTER_VALIDATE_EMAIL, FILTER_SANITIZE_STRING, dst).
  • options adalah array asosiatif tambahan untuk menentukan aturan penyaringan yang ditentukan.

Memvalidasi Alamat Email

Salah satu penggunaan paling umum dari filter_var adalah untuk memvalidasi alamat email.

$email = "contoh@contoh.com";
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
    echo "Alamat email ini valid.";
} else {
    echo "Alamat email ini tidak valid.";
}

Menyaring String

Kamu juga bisa menggunakan filter_var untuk membersihkan string dari tag HTML atau karakter berbahaya lainnya.

$string = "<h1>Hello, World!</h1>";
$result = filter_var($string, FILTER_SANITIZE_STRING);
echo $result; // Output: Hello, World!

Opsi Tambahan

Kamu dapat menambahkan opsi untuk menyesuaikan behavior dari filter.

Memvalidasi Rentang Angka

Misalnya, memvalidasi bahwa sebuah angka berada di dalam rentang tertentu.

$age = 25;
$options = array(
    "options" => array(
        "min_range" => 1,
        "max_range" => 100
    )
);
if (filter_var($age, FILTER_VALIDATE_INT, $options)) {
    echo "Umur valid.";
} else {
    echo "Umur tidak valid.";
}

Menambahkan Flag

Flag bisa ditambahkan untuk mengubah perilaku filter. Sebagai contoh, menggunakan FILTER_FLAG_STRIP_HIGH akan membersihkan karakter dengan kode ASCII di atas 127.

$string = "Coba teks ini ♥";
$result = filter_var($string, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
echo $result; // Output: Coba teks ini

Daftar Filter yang Tersedia

PHP menyediakan banyak filter siap pakai. Berikut beberapa contoh filter yang sering digunakan:

  • FILTER_VALIDATE_EMAIL: Memvalidasi apakah sebuah string adalah alamat email yang valid.
  • FILTER_VALIDATE_INT: Memvalidasi apakah variabel adalah integer.
  • FILTER_VALIDATE_URL: Memvalidasi URL.
  • FILTER_SANITIZE_EMAIL: Menyaring string sebagai alamat email.
  • FILTER_SANITIZE_SPECIAL_CHARS: Menyingkirkan tag HTML dan karakter-karakter khusus.

Contoh Penggunaan

Berikut adalah contoh yang menggabungkan validasi dan penyaringan untuk memproses data formulir.

$userInput = array(
    'email'   => "user@example.com",
    'age'     => "25",
    'website' => "http://example.com"
);

// Validasi email
if (!filter_var($userInput['email'], FILTER_VALIDATE_EMAIL)) {
    echo "Email tidak valid!";
}

// Validasi usia
$ageOptions = array(
    "options" => array("min_range" => 18, "max_range" => 65)
);
if (!filter_var($userInput['age'], FILTER_VALIDATE_INT, $ageOptions)) {
    echo "Usia tidak valid!";
}

// Sanitize URL
$sanitizedWebsite = filter_var($userInput['website'], FILTER_SANITIZE_URL);
echo "Website yang bersih: $sanitizedWebsite";

Fungsi filter_var di PHP sangat bernilai untuk memproses input dari pengguna. Dengan berbagai filter yang tersedia, pengembang dapat memastikan data masukan bersih dan sesuai kebutuhan aplikasi.

👈🏼 header
Debugging PHP 👉🏼