scullwm/inboxsearch

开发中

dev-master 2016-09-30 06:58 UTC

This package is not auto-updated.

Last update: 2024-09-26 23:35:27 UTC


README

搜索操作符库。更多内容请参考Gmail:https://support.google.com/mail/answer/7190?hl=en

支持的运算符

  • 文件名(字符串)
  • 大小(整数 - 将字符串转换为字节)
  • 包含(字符串)
  • 发件人(字符串)
  • 收件人(字符串)
  • 主题(字符串)
  • 标签(字符串)
  • 投递至(字符串)
  • 之后(\DateTime)
  • 之前(\DateTime)
  • 较早(\DateTime)
  • 较新(\DateTime)
  • 在(字符串)

如何使用

$term = 'from:thomas@scullwm.com forum';
$factory = new InboxSearchFactory($term);

//  return InboxSearchInterface
$inboxSearch = $factory->process();

$from    = $inboxSearch->getFrom(); // thomas@scullwm.com
$keyword = $inboxSearch->getKeyword(); // array('from' => 'forum')

$fromKeyword = $inboxSearch->getKeywordFor(InboxSearchInterface::FILTER_FROM); // forum

创建自己的过滤器

过滤器必须实现 FilterInterface。然后在您的工厂实例中注册过滤器

$factory = new InboxSearchFactory($term);

$myFilterParserFqcn = 'Swm\InboxSearch\FilterModel\MyCustomFilter';
$factory->addFilterParser($myFilterParserFqcn);

测试

php composer install --dev
bin/atoum -d tests/units