xrobau/spfcheck

检查IP地址与域名的SPF记录是否匹配

1.2.0 2022-03-16 02:31 UTC

This package is auto-updated.

Last update: 2024-09-16 07:59:34 UTC


README

Build Status Latest Stable Version Total Downloads License Coverage Status

一个简单的库,用于检查IP地址是否与域名的SPF记录匹配

这是对mika56/spfcheck的更新分支,只有一些小的改动。

安装

此库通过Composer提供。运行composer require xrobau/spfcheck或在您的composer.json中添加此命令

{
  "require": {
    "xrobau/spfcheck": "^1"
  }
}

使用方法

创建一个SPFCheck的新实例。构造函数需要一个DNSRecordGetterInterface对象。目前,您有两个选择

  • DNSRecordGetter,它使用PHP的DNS函数来获取数据
  • DNSRecordGetterDirect,它使用PHP DNS Direct Query Module来获取数据。
<?php
use Mika56\SPFCheck\SPFCheck;
use Mika56\SPFCheck\DNSRecordGetter;

require('vendor/autoload.php');

$checker = new SPFCheck(new DNSRecordGetter()); // Uses php's dns_get_record method for lookup.
var_dump($checker->isIPAllowed('127.0.0.1', 'test.com'));

// or

$checker = new SPFCheck(new DNSRecordGetterDirect("8.8.8.8")); // Uses phpdns, allowing you to set the nameserver you wish to use for the dns queries.
var_dump($checker->isIPAllowed('127.0.0.1', 'test.com'));

返回值是以下之一:SPFCheck::RESULT_PASSSPFCheck::RESULT_FAILSPFCheck::RESULT_SOFTFAILSPFCheck::RESULT_NEUTRALSPFCheck::RESULT_NONESPFCheck::RESULT_PERMERRORSPFCheck::RESULT_TEMPERROR

缺少的功能

目前此库缺少一些功能。以下是一些缺少的功能的部分列表

非常欢迎您提交一个拉取请求,添加这些功能的任何部分。