exonet/powerdns-php

PowerDNS API PHP 客户端

v4.6.2 2024-09-09 09:31 UTC

README

Latest Version on Packagist Software License Build Status Total Downloads

powerdns-php

一个用于与 PowerDNS API 通信的 PHP 客户端。

安装

通过 Composer

$ composer require exonet/powerdns-php

使用方法

创建一个新的 DNS 区域并插入一些 DNS 记录的基本示例。

use Exonet\Powerdns\Powerdns;
use Exonet\Powerdns\RecordType;
use Exonet\Powerdns\Resources\ResourceRecord;
use Exonet\Powerdns\Resources\Record;

// Initialize the Powerdns client.
$powerdns = new Powerdns('127.0.0.1', 'powerdns_secret_string');

// Create a new zone.
$zone = $powerdns->createZone(
    'example.com',
    ['ns1.example.com.', 'ns2.example.com.']
);

// Add two DNS records to the zone.
$zone->create([
    ['type' => RecordType::A, 'content' => '127.0.0.1', 'ttl' => 60, 'name' => '@'],
    ['type' => RecordType::A, 'content' => '127.0.0.1', 'ttl' => 60, 'name' => 'www'],
]);

// OR use the Object-based way
$zone->create([
    (new ResourceRecord())->setType(RecordType::A)->setRecord('127.0.0.1')->setName('@')->setTtl(60),
    (new ResourceRecord())->setType(RecordType::A)->setRecord((new Record())->setContent('127.0.0.1'))->setName('@')->setTtl(60),
]);

更多示例请参阅 示例目录

变更日志

有关最近变更的更多信息,请参阅 发布

测试

可以通过使用提供的 docker-compose.ymlrun-tests.sh 脚本来测试多个 PHP / PowerDNS 版本。

$ docker-compose up -d
$ ./run-tests.sh

运行 docker-compose up -d 后,等待几秒钟以便初始化 PowerDNS。您可以保持容器运行并多次调用测试脚本。

要测试特定的 PHP / PowerDNS 组合,您可以提供 PHP 版本作为第一个参数,PowerDNS 版本作为第二个参数。

$ ./run-tests.sh 7.4 4.3

贡献

有关详细信息,请参阅 CONTRIBUTINGCODE_OF_CONDUCT

安全性

如果您发现任何与安全相关的问题,请通过电子邮件 development@exonet.nl 报告,而不是使用问题跟踪器。

致谢

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件