donchev / email-extractor
从字符串或字符串数组中提取有效的电子邮件地址。包含一些辅助方法,如 sortAsc/sortDesc,unique,filterInclude/filterExclude,lowercase/uppercase。
Requires
- php: >=7.1
- ext-mbstring: *
This package is auto-updated.
Last update: 2024-09-13 15:02:58 UTC
README
在 array 中提取来自 string 或 string array 的所有有效电子邮件地址。此库还包括一些辅助方法来修改输出数组。
安装
composer require donchev/email-extractor
对象实例化
EmailExtractor 对象在其 __constructor() 方法中接受 2 个可选参数
array|null $filter用于过滤匹配电子邮件的单词数组。如果不传递给构造函数,当调用filterAsc()或filterDesc()时将使用空数组。string|null $regex匹配电子邮件地址的有效正则表达式。如果不传递给构造函数,将使用默认的内置正则表达式。(注意:除非您知道自己在做什么,否则建议使用内置正则表达式。)
简单用法
<?php require_once __DIR__ . '/vendor/autoload.php'; $extractor = new EmailExtractor(); $content = file_get_contents("email.eml"); $emails = $extractor ->extract($content) ->export();
高级用法
<?php require_once __DIR__ . '/vendor/autoload.php'; $filter = ['@gmail.com', 'allen'] $content = ["allen@yahoo.com, sample@gmail.com, test@mail.com", "mail@mail.me"]; $extractor = new EmailExtractor($filter); $emails = $extractor ->extractAll($content) ->filterInclude() ->lower() ->unique() ->sortDesc() ->export();
输出
array (size=2)
0 => string 'sample@gmail.com' (length=16)
1 => string 'allen@yahoo.com' (length=16)
方法链设计模式
Email Exporter 库使用方法链。您应遵循以下简单规则
extract()或extractAll()方法 必须 首先调用。
否则,将抛出 EmailExtractorException。
辅助方法
内置了一些辅助方法。这些方法可以在 extract()/extractAll() 之后调用。
方法
作者
许可协议
MIT 许可协议 (MIT)
版权所有 (c) 2022 Donchev
特此授予任何获得本软件及其相关文档副本(以下简称“软件”)的人,免费使用软件的权利,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,并允许有权获得软件的人这样做,前提是遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“现状”提供,不提供任何明示或暗示的保证,包括但不限于适销性、针对特定目的的适用性和非侵权性保证。在任何情况下,作者或版权所有者不应对任何索赔、损害或其他责任负责,无论此类责任是基于合同、侵权或其他方式,源于、因之或与此软件或其使用或任何其他行为有关。