WC_Cart::is_coupon_emails_allowed( array $check_emails, array $restrictions )
Checks if the given email address(es) matches the ones specified on the coupon.
Description Description
Parameters Parameters
- $check_emails
-
(Required) Array of customer email addresses.
- $restrictions
-
(Required) Array of allowed email addresses.
Return Return
(bool)
Source Source
File: includes/class-wc-cart.php
public function is_coupon_emails_allowed( $check_emails, $restrictions ) {
foreach ( $check_emails as $check_email ) {
// With a direct match we return true.
if ( in_array( $check_email, $restrictions, true ) ) {
return true;
}
// Go through the allowed emails and return true if the email matches a wildcard.
foreach ( $restrictions as $restriction ) {
// Convert to PHP-regex syntax.
$regex = '/^' . str_replace( '*', '(.+)?', $restriction ) . '$/';
preg_match( $regex, $check_email, $match );
if ( ! empty( $match ) ) {
return true;
}
}
}
// No matches, this one isn't allowed.
return false;
}