0

文字列の検索に少し問題があります。cPanel の XMLAPI を使用して、cPanel にあるすべてのメール アカウントを一覧表示しています。次に、リストにあるものを使用してユーザーの入力を検索し、電子メールが既に存在するかどうかを確認します。ただし、問題は次のとおりです。

新しい電子メールが 1 文字の場合、たとえば : 1@domain.comリスト
の電子メールの 1 つが数字の 1 で終わる場合 --> josh1@domain.com の場合、検索では 1@domain.com と表示されます。リストに。

リストは次のようになります。

{
    "cpanelresult": {
        "event": {
            "result": 1
        },
        "data": [{
            "email": "1@domain.com",
            "login": "1@domain.com"
        }, {
            "email": "10@domain.com",
            "login": "10@domain.com"
        }, {
            "email": "11@domain.com",
            "login": "11@domain.com"
        }, {
            "email": "5@domain.com",
            "login": "5@domain.com"
        }, {
            "email": "8@domain.com",
            "login": "8@domain.com"
        }, {
            "email": "9@domain.com",
            "login": "9@domain.com"
        }, {
            "email": "admin@domain.com",
            "login": "admin@domain.com"
        }, {
            "email": "auth@domain.com",
            "login": "auth@domain.com"
        }, {
            "email": "cai@domain.com",
            "login": "cai@domain.com"
        }, {
            "email": "estoris@domain.com",
            "login": "estoris@domain.com"
        }, {
            "email": "johndoe@domain.com",
            "login": "johndoe@domain.com"
        }, {
            "email": "maplex111@domain.com",
            "login": "maplex111@domain.com"
        }, {
            "email": "**maplex222@domain.com**",
            "login": "maplex222@domain.com"
        }, {
            "email": "patrickroxs@domain.com",
            "login": "patrickroxs@domain.com"
        }, {
            "email": "test@domain.com",
            "login": "test@domain.com"
        }, {
            "email": "amail",
            "login": "Main 
Account"
        }],
        "func": "listpops",
        "module": "Email",
        "apiversion": 2
    }
}

これは、電子メールを見つけようとするために私がしたことです:

     if(preg_match("/2@domain.com/",$try) == true) {
     echo 'Found the email!';
     } else {
     echo 'Did not find email';
     }

そのコードは、電子メールがリストにないのにリストにあると言っています。では、これを行うにはどうすればよいですか?

4

1 に答える 1

0

二重引用符に一致していません。

 if(preg_match('/"' + email + '"/',$try) == true) {
     echo 'Found the email!';
 } else {
     echo 'Did not find email';
 }
于 2013-09-01T02:52:30.000 に答える