PHP code example of svss-labs / email-verification-api

1. Go to this page and download the library: Download svss-labs/email-verification-api library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

svss-labs / email-verification-api example snippets




use SVSSLabs\EmailVerificationApi\EmailVerificationApi;
use SVSSLabs\EmailVerificationApi\VerifyEmailTokenInput;

$token   = $_POST['token'];            // hidden field, populated by the browser
$nonce   = $_SESSION['nonce'];         // the nonce you embedded in the form
$email   = $_POST['email'];
$audience = "https://your-domain.com"; // your site's origin

$input = new VerifyEmailTokenInput(
    token: $token,
    nonce: $nonce,
    email: $email,
    audience: $audience,
);

$result = EmailVerificationApi::verifyEmailToken($input);

if ($result->ok) {
    echo "{$result->value->email} is verified by {$result->value->issuer}";
} else {
    echo "Verification failed: {$result->error->message}";
}

use App\Http\Controllers\EmailVerificationController;

Route::get('/signup', [EmailVerificationController::class, 'show']);
Route::post('/signup', [EmailVerificationController::class, 'verify']);



namespace App\Http\Controllers;

use Illuminate\Http\RedirectResponse;
use Illuminate\Http\Request;
use Illuminate\View\View;
use SVSSLabs\EmailVerificationApi\EmailVerificationApi;
use SVSSLabs\EmailVerificationApi\VerifyEmailTokenInput;

class EmailVerificationController extends Controller
{
    public function show(Request $request): View
    {
        // Keep a rolling pool of recent nonces — the token may be bound to a
        // nonce issued on an earlier page load.
        $nonces = $request->session()->get('evp_nonces', []);
        $nonce = bin2hex(random_bytes(32));
        $nonces[] = $nonce;
        $request->session()->put('evp_nonces', array_slice($nonces, -10));

        return view('signup', ['nonce' => $nonce]);
    }

    public function verify(Request $request): RedirectResponse
    {
        $validated = $request->validate([
            'email' => ['
bash
git clone https://github.com/svss-labs/email-verification-api.git
cd email-verification-api
composer install
php example/demo.php
bash
composer install
php -S localhost:8080 example/live-demo.php