Skip to content

Releases: prezine/php-human-validator

Working first version

25 Jul 15:22

Choose a tag to compare

🧠 HumanValidator

A PHP package for validating real human input – not just syntax. Catch fake names, non-existent emails, weak passwords, and inappropriate usernames before they clutter your database.

Built for developers and product teams who care about data quality.


🚀 Why HumanValidator?

When building Pandascrow v3, I noticed something frustrating: over 100 fake or test accounts with valid-looking emails and names — but none were real. Some were competitors. Some were bots. Others were just testing.

This package helps you validate humans, not just input formats.


✨ Features

  • ✅ Real email existence check (SMTP handshake)
  • ✅ Fake name detection (e.g. Nivnfjunvdd Fifocnuec → ❌)
  • ✅ Password strength validation with custom rules
  • ✅ Username filtering for profanity and reserved words

✅ Usage

use HumanValidator\EmailValidator;
use HumanValidator\PasswordValidator;
use HumanValidator\UsernameValidator;
use HumanValidator\NameValidator;

// Check if an email exists in real life
EmailValidator::isReal('john@example.com'); // true or false

// Validate a password with optional context
PasswordValidator::validate('S3cur3P@ss!', [
    'name' => 'John',
    'email' => 'john@example.com'
]); // true or false

// Check for username validity (profanity, reserved words, etc.)
UsernameValidator::isValid('john_doe'); // true or false

// Validate if a name looks real
NameValidator::isValid('John Doe'); // true or false