PHP 从文本区域获取所有电子邮件地址

标签 php arrays

您好,我正在将电子邮件地址从文本区域保存到数据库中。现在我希望将这些数据放入一个数组中,这样我就可以向每个电子邮件地址发送一封邮件。

在每个换行符处都有一个电子邮件地址,如下所示:

<textarea>
my@email.com 
my2@email.com 
my3@email.com
</textarea>

此数据以 LONGTEXT 格式保存在数据库中。我将这些数据作为字符串从数据库中获取。 但是我希望将数据放在一个数组中。所以每封电子邮件都有一个唯一的索引。 请注意,数据库中没有保存像 '\n' 和 < br > 这样的特殊字符。

提前致谢!

最佳答案

您的问题似乎表明您将整个文本区域中的电子邮件地址保存起来,而不是先将它们分开并分别保存每个地址。您将希望采用后一种方法。为什么每次读出数据库时都要拆分/验证?

首先,将传入的电子邮件拆分为:

$email_addresses = preg_split('/\r\n|\n|\r/', $_POST['email_addresses']);

正则表达式允许您考虑不同平台使用的不同行尾字符。

然后您可以遍历地址并验证每个地址:

filter_var($email_address, FILTER_VALIDATE_EMAIL)

然后将每个地址保存在数据库中自己的行中。

关于PHP 从文本区域获取所有电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10518934/

相关文章:

php - 用html向mysql添加新元素

php - 将记录从数据库添加到ajax数组

java - 如何替换java中字符串列表中整数的第一个实例?

java - 数组索引越界?如何?

php - 使用浏览器后退按钮获取 Ajax 上一个请求

php - 字符串替换多个值

php - 替换和追加字符串的一部分 - MySQL

java - 大小为 n 的列表的所有可能的 k 组合

jquery - 在jquery中将多维哈希转换为数组

JavaScript 数组 : merge 2 arrays with priority