mika56/spfcheck

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

2.2.0 2024-02-24 09:36 UTC

This package is auto-updated.

Last update: 2024-09-24 11:06:08 UTC


README

CI Latest Stable Version Total Downloads License Codacy Badge Codacy Badge

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

需求

此库需要支持 PHP 的版本,即 PHP 7.4 和 >= 8.0。

如果您正在运行较旧的 PHP 版本,您可能对库的版本 1 感兴趣,它支持 PHP 版本 5.3 及以上。请注意,此版本不具有所有功能,且不会收到任何错误修复。

安装

此库通过 Composer 提供。运行 composer require "mika56/spfcheck:^2.0" 或将其添加到您的 composer.json 中。

{
  "require": {
    "mika56/spfcheck": "^2.0"
  }
}

使用

创建一个新的 SPFCheck 实例。构造函数需要一个 DNSRecordGetterInterface 对象。本库包含 DNSRecordGetter,它使用 PHP 的 DNS 函数 dns_get_record 来获取数据。如果您想使用自定义 DNS 服务器,请参阅 mika56/spfcheck-dns-direct

<?php
use Mika56\SPFCheck\DNS\DNSRecordGetter;
use Mika56\SPFCheck\SPFCheck;

require('vendor/autoload.php');

$checker = new SPFCheck(new DNSRecordGetter());
var_dump($checker->getIPStringResult('127.0.0.1', 'test.com'));

返回值是以下之一:Result::SHORT_PASSResult::SHORT_FAILResult::SHORT_SOFTFAILResult::SHORT_NEUTRALResult::SHORT_NONEResult::SHORT_PERMERRORResult::SHORT_TEMPERROR

如果您想获取更多检查详情,可以使用 SPFCheck::getResult(Query $query): Result,它将返回一个包含更多检查详情的 Result 对象。