ホームページ  >  記事  >  バックエンド開発  >  php_PHP チュートリアルでの電子メール アドレス検証の完全なコレクション

php_PHP チュートリアルでの電子メール アドレス検証の完全なコレクション

WBOY
WBOYオリジナル
2016-07-13 16:57:50977ブラウズ

PHP でアドレス検証を記述するにはさまざまな方法があります。一般的に使用されるメール アドレス検証の例をいくつかまとめます。最も簡単な方法は、正規表現 preg_match("/^([a-z0-9\+_ \-) を使用することです。 ]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix 来てください

CodeIgniter フレームワークのメールアドレス検証

コードは次のとおりです コードをコピー

/**
     * 有効なメールアドレス
     *
     * @access 公開
     * @param 文字列
     * @return ブール
    */
関数 valid_email($str)
{
return ( ! preg_match("/^([a-z0-9+_-]+)(.[a-z0-9+_-]+)*@([a-z0-9-]+.)+ [a-z]{2,6}$/ix", $str)) ? FALSE : TRUE;
}

PHPCMSメール定期認証

WordPress邮件地址验证関数数

コードは次のとおりです コードをコピー

/**
* メールの形式が正しいかどうかを確認します
* @param $email
​*/
関数 is_email($email) {
strlen($email) > 6 && preg_match("/^[w-.]+@[w-.]+(.w+)+$/", $email); }

代码如下 复制幣

/**
 * 電子メールが有効であることを確認します。
 *
 * i18n ドメインを調べません。 RFC に準拠していません。
 *
 * @0.71 以降
 *
 * @param string $email 確認する電子メール アドレス。
 * @param boolean $deprecated 非推奨。
 * @return string|bool false または有効な電子メール アドレス。
 */
関数 is_email( $email, $deprecated = false ) {
    if ( ! empty( $deprecated ) )
        _deprecated_argument( __FUNCTION__, '3.0' );
 
    // メールの最小長をテストします
    if ( strlen( $email )         return apply_filters( 'is_email', false, $email, 'email_too_short' );
    }
 
    // 最初の位置の後の @ 文字をテストします
    if ( strpos( $email, '@', 1 ) === false ) {
        return apply_filters( 'is_email', false, $email, 'email_no_at' );
    }
 
    // ローカル部分とドメイン部分を分割します
    list( $local, $domain ) =explode( '@', $email, 2 );
 
    // ローカル部分
    // 無効な文字をテストします
    if ( !preg_match( '/^[a-zA-Z0-9!#$%&'*+/=?^_`{|}~.-]+$/', $local ) ) {
        return apply_filters( 'is_email', false, $email, 'local_invalid_chars' );
    }
 
    // ドメイン部分
    // 一連のピリオドをテストします
    if ( preg_match( '/.{2,}/', $domain ) ) {
        return apply_filters( 'is_email', false, $email, 'domain_period_sequence' );
    }
 
    // 先頭と末尾のピリオドと空白をテストします
    if (trim( $domain, " tnrx0B." ) !== $domain ) {
        return apply_filters( 'is_email', false, $email, 'domain_period_limits' );
    }
 
    // ドメインをサブに分割します
    $subs =explode( '.', $domain );
 
    // ドメインには少なくとも 2 つのサブドメインがあると仮定します
    if ( 2 > count( $subs ) ) {
        return apply_filters( 'is_email', false, $email, 'domain_no_periods' );
    }
 
    // 各サブをループします
    foreach ( $subs として $sub ) {
        // 先頭と末尾のハイフンと空白をテストします
        if (トリム( $sub, " tnrx0B-" ) !== $sub ) {
            return apply_filters( 'is_email', false, $email, 'sub_hyphen_limits' );
        }
 
        // 無効な文字をテストします
        if ( !preg_match('/^[a-z0-9-]+$/i', $sub ) ) {
            return apply_filters( 'is_email', false, $email, 'sub_invalid_chars' );
        }
    }
 
    // おめでとうございます。メールが届きました!
    return apply_filters( 'is_email', $email, $email, null );
}


例:自分で書いたもの

コードは次のとおりです コードをコピー
$email = "tanklo_--vehy@yahoo.com.cn";
関数 check_email($email) {
$pattern_test = "/([a-z0-9]*[-_.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0- 9]+)+[.][a-z]{2,3}([.][a-z]{2})?/i";
return preg_match($pattern_test,$email);
}
echo check_email($email);

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/631510.html技術記事 PHP でアドレス検証を記述するにはさまざまな方法があります。以下に、一般的に使用される電子メール アドレス検証の例をいくつかまとめます。最も簡単な方法は、正規表現 preg_match("/^([a-z0-9\+_\ - ]+)(...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。