2016-12-03 8 views
-3

入力に複数の行を入力するとどうなりますか? ex:複数の電子メールを入力した場合どうすれば各行にmail()関数を使用できますか? あなた私はどのように入力からデータを分離することができます

+0

)あなた自身に答えました。今すぐ分ける必要があります;-) –

+0

コードを共有してください。 – Haridarshan

+0

私は質問に答えたが、それは配列で動作する入力で動作しませんでした;) – sumato

答えて

-1

PHP:

$lines = preg_split('/\r\n|[\r\n]/', $_POST['input']); 
foreach($line as $lines){ 
//do whatever with line ex 
mail($line); 
} 
+0

ありがとう私はそれが動作することを願って – sumato

0

This documentationは答えを提供する必要があります。改行によってアドレスが区切られている各アドレスに別々の電子メールを送信する場合は、\nをセパレータとして使用し、文字列をexplode()に渡します。 \nは、改行のエスケープシーケンスです。つまり、改行のエイリアスです。

注:\nのようなエスケープシーケンスは二重引用符(")でしか動作しません。 2つのintermidiate変数の使用を避けるために

$inputData //This stores your input data that has newlines 

$data = explode("\n", $inputData) 
$lenOfData = count($data) //These two lines stop us from re-executing count() and explode(), so we only run it once 

for($i = 0; i < count($inputData); $i++){ 
    mail($data[$i], "We have released a new product", "Description of product"); 
} 

注:エスケープシーケンスは、(')単一引用符で働く唯一の例外はforループを使用して、いくつかのサンプルコード、\\ここで

\'されていますexplodeおよびcountの機能を再評価します。あなたは、ほぼ(基本的には -

「のためにそれぞれの」* *また、あなたはループのためforeach loopの代わりに使用することができ、その後、コードは(メーリングリストを格納$inputDataで再び)のようになります

$data = explode("\n", $inputData) 

for($data as $i){ 
    mail($i, "We have released a new product", "Description of product"); 
} 
+0

ありがとう – sumato

関連する問題