に行くようです。各電子メールに対して、メッセージが送信されます。このファイルでは何も変更されません。PHPは、私は、次のコードを使用しています無限foreachループ
ほとんどの場合、それは絶対にうまく動作し、各アドレスにただ1つのメッセージを送信します。ただし、無限ループに入り、複数のメッセージを同じアドレスに送信し始める場合があります。
必要に応じて追加の詳細を提供することができます。
に行くようです。各電子メールに対して、メッセージが送信されます。このファイルでは何も変更されません。PHPは、私は、次のコードを使用しています無限foreachループ
ほとんどの場合、それは絶対にうまく動作し、各アドレスにただ1つのメッセージを送信します。ただし、無限ループに入り、複数のメッセージを同じアドレスに送信し始める場合があります。
必要に応じて追加の詳細を提供することができます。
無限ループを引き起こす可能性のあるものはありません。 電子メールアドレスを持つファイルには、おそらく電子メールが重複しています。
が確認するために、このような何かを試してみてください:
$array = explode("\n", file_get_contents($file));
print_r(array_count_values($array));
それはする必要があり、このような何かを出力:
Array
(
[[email protected]] => 2
[[email protected]] => 1
[[email protected]] => 3
...
)
ありがとうございます。このリストには重複した電子メールは含まれていません。私はちょうどそれをチェックして、私は手動でそれを編集するため、私は確かに知っている。 –
あなたのコードは、文字列を連結するための時間にわずかな誤差があります。
間違っ
$headers .= 'From: '...' . "\r\n";
右
$headers = 'From: . \ R \ n";
そして私はある値を確認するために、 'のvar_dump($配列)' をしようと、foreachので無限ループを生成することができます何も表示されません。あなたに来る。
コメントありがとうございました。私はvar_dump関数を実際に試してみます。これは参考になるかもしれません。しかし、このスクリプトはほとんどの場合よく機能します。私が気づいたのは、無限ループにならず同じ電子メールを同じ受信者に複数回送信するということです。 –
無限ループを引き起こす可能性のあるコードには何も表示されません。同じ人に複数の電子メールを送信する場合、 '$ file'に複数回表示された場合、私が見ることができる唯一の方法です。 –
'$ check = file_get_contents( 'file.txt');'なぜこれをすべての繰り返しで読みますか? –
Btw、 '$ headers。= 'From:' ... 'に構文エラーがあります。 "\ r \ n"; '(1つのハイフンが多すぎます)。 – syck