$sanitizer->email() method

Sanitize and validate an email address

Returns valid email address, or blank string if it isn’t valid.

Usage

// basic usage
$string = $sanitizer->email(string $value);

// usage with all arguments
$string = $sanitizer->email(string $value, array $options = []);

Arguments

NameType(s)Description
valuestring

Email address to sanitize and validate.

options (optional)array

All options require 3.0.208+

  • allowIDN (bool|int): Allow internationalized domain names? (default=false) Specify int 2 to also allow UTF-8 in local-part of email [SMTPUTF8] (i.e. bøb).
  • getASCII (bool): Returns ASCII encoded version of email when host is IDN (default=false) Does not require the allowIDN option since returned email host will be only ASCII. Not meant to be combined with allowIDN=2 option since local-part of email does not ASCII encode.
  • getUTF8 (bool): Converts ASCII-encoded IDNs to UTF-8, when present (default=false)
  • checkDNS (bool): Check that host part of email has a valid DNS record? (default=false) Warning: this slows things down a lot and should not be used in time sensitive cases.
  • throw (bool): Throw WireException on fail with details on why it failed (default=false)

Return value

string

Sanitized, valid email address, or blank string on failure.


$sanitizer methods and properties

API reference based on ProcessWire core version 3.0.214

Twitter updates

  • Weekly update – 31 March 2023 – More
    31 March 2023
  • This week ProcessWire 3.0.214 is on the dev branch. Relative to 3.0.213 this version has 16 new commits which include the addition of 3 new pull requests, 6 issue fixes, a new WireNumberTools utility class, and various other improvements. More
    17 March 2023
  • ProcessWire 3.0.213 core updates: This week we’ll look at the new WireSitemapXML module, a new WireNumberTools core class, and a new ability for Fieldtype modules to specify useful ready-to-use configurations when creating new fields. More
    24 February 2023

Latest news

  • ProcessWire Weekly #464
    In the 464th issue of ProcessWire Weekly we're going to check out the latest core updates, introduce a new third party textformatter module for handling footnotes in text, and more. Read on!
    Weekly.pw / 1 April 2023
  • ProcessWire 3.0.213 core updates
    This week we’ll look at the new WireSitemapXML module, a new WireNumberTools core class, and a new ability for Fieldtype modules to specify useful ready-to-use configurations when creating new fields.
    Blog / 24 February 2023
  • Subscribe to weekly ProcessWire news

“The end client and designer love the ease at which they can update the website. Training beyond how to log in wasn’t even necessary since ProcessWire’s default interface is straightforward.” —Jonathan Lahijani