2016-05-24 4 views
-1

コンマ区切りの電子メールアドレスを含む文字列があります。オブジェクトメソッドで使用される値の文字列をループする

addBccメソッドを使用して、メーラーオブジェクト($ mailin)に追加する必要があります。オブジェクトはメソッド連鎖をサポートします。

forループでechoを試してみましたが、期待したとおりの結果が得られましたが、うまくいきませんでした。それは私に500エラーを与えた。

希望の結果;

$mailin = new Mailin('[email protected]', 'apikey'); 
$mails = "[email protected], [email protected]"; 
$mailin-> 
    addBcc('[email protected]')-> 
    addBcc('[email protected]')-> 

ありがとうございます。

+0

ます。http: //stackoverflow.com/questions/11396033/stdclass-to-array配列にキャストしますか?メーラーaddBccに応じて – Richard

+0

は、配列や文字列を許可することがあります。爆発してループしない場合 –

答えて

1

あなたはexplodeなどのようなforeachループを使用することができます:あなたが持っている場合

$mails = "[email protected], [email protected]"; 
$bcc = explode(',',$mails); 

foreach($bcc as $address){ 
    $mailin->addBcc(trim($address)); 
} 
+0

明確かつ簡潔です。 – Progrock

0

を:

$mails = "[email protected], [email protected]"; 

をすべて別々のメールアドレスを持つ配列を得ることが次のことを行うことができます:

$mailArray = []; 
$result = [];  //this will be the result 
list($mailArray) = explode(",", $mails);//here you are separating the emails 
foreach ($mailArray as $value) 
{ 
    $result[] = trim($value);//here you are taking out the whitespaces left behind 
} 

$resultはあなたが探している電子メールの完全な配列になります。

foreach ($result as $value) 
{ 
    echo "-->{$value}<br>"; 
} 

を、あなたの前のコードでそれを使用したい場合は、それは次のようになります:あなたは、配列内で見たい場合は、行うことができます

$mailin-> 
    addBcc($result[0])-> 
    addBcc($result[1])-> 
//... rest of your code 
+0

待って、あなたはevalを提案していますか? – Evert

+0

@Evert私はevalが何であるかは分かりませんが、ただちにgooglingした後、私はそれを示唆していないと確信しています。どうして?私のコードはどこかの要素を持っていますか? – Webeng

+0

@Evertあなたは ' - > {$ value}
'文字列と混同されていると思います。 ' - >'はコードではなく、コードから得た結果をOPに示すために 'foreach'ループにエコーされる文字列の一部です。 – Webeng

関連する問題