Validasi alamat email sangat penting untuk any application formulir online yang mengumpulkan informasi kontak pengguna.
Ada beberapa level dalam pendekatan validasi email:
- Validasi Sintaktik: Memastikan email tidak mengandung kesalahan mendasar (contoh: [email address removed] memiliki sintaktik yang benar).
- Periksa Domain Utama: Memeriksa apakah domain email yang valid memiliki server email (contoh: [email address removed] valid, dan domain “Cloudmersive” memiliki server email).
- Validasi Akun Pengguna: Memastikan alamat email valid dan akun pengguna tersebut ada (contoh: [email address removed] memiliki domain valid, tetapi “John Doe” mungkin bukan akun yang sebenarnya).
Tiga level validasi ini dapat dilakukan dengan memanfaatkan API gratis.
Yang Dibutuhkan:
- Cloudmersive API key (gratis hingga 800 panggilan per bulan)
- Composer (untuk instalasi library)
Instalasi Library Cloudmersive
Pertama, kita perlu instal library Cloudmersive menggunakan Composer. Buka command line (terminal) dan jalankan perintah berikut:
Bash
composer require cloudmersive/cloudmersive_validate_api_client
Validasi Sintaktik Email
Setelah instalasi selesai, gunakan kode berikut untuk memanggil API validasi sintaktik:
PHP
<?php
require_once(__DIR__ . '/vendor/autoload.php');
// Ganti 'YOUR_API_KEY' dengan API key Anda
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('Apikey', 'YOUR_API_KEY');
$apiInstance = new Swagger\Client\Api\EmailApi(
//
new GuzzleHttp\Client(),
$config
);
$email = "alamat_email_contoh"; // Ganti dengan email yang ingin divalidasi (contoh: "support@cloudmersive.com")
try {
$result = $apiInstance->emailPost($email);
print_r($result);
} catch (Exception $e) {
echo 'Error saat validasi email: ', $e->getMessage(), PHP_EOL;
}
?>
Periksa Domain dan Server Email
Gunakan kode berikut untuk memeriksa domain dan server email:
PHP
<?php
require_once(__DIR__ . '/vendor/autoload.php');
// Ganti 'YOUR_API_KEY' dengan API key Anda
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('Apikey', 'YOUR_API_KEY');
$apiInstance = new Swagger\Client\Api\EmailApi(
//
new GuzzleHttp\Client(),
$config
);
$email = "alamat_email_contoh"; // Ganti dengan email yang ingin divalidasi (contoh: "support@cloudmersive.com")
try {
$result = $apiInstance->emailAddressGetServers($email);
print_r($result);
} catch (Exception $e) {
echo 'Error saat periksa server email: ', $e->getMessage(), PHP_EOL;
}
?>
Validasi Akun Pengguna (Tanpa Kirim Email)
Gunakan kode berikut untuk validasi akun pengguna secara diam-diam (tanpa mengirim email):
PHP
<?php
require_once(__DIR__ . '/vendor/autoload.php');
// Ganti 'YOUR_API_KEY' dengan API key Anda
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('Apikey', 'YOUR_API_KEY');
$apiInstance = new Swagger\Client\Api\EmailApi(
//
new GuzzleHttp\Client(),
$config
);
$email = "alamat_email_contoh"; // Ganti dengan email yang ingin divalidasi (contoh: "support@cloudmersive.com")
try {
$result = $apiInstance->emailFullValidation($email);
print_r($result);
} catch (Exception $e) {
echo 'Error saat validasi akun pengguna: ', $e->getMessage(), PHP_EOL;
}
?>
Dengan mengikuti langkah ini dan ketiga kode tersebut, Anda memiliki tiga cara mudah untuk memvalidasi email di aplikasi PHP Anda!