Un cliente PHP para comunicarse con la API PowerDNS.
Vía compositor
$ composer require exonet/powerdns-php
Ejemplo básico de cómo crear una nueva zona DNS e insertar algunos registros 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 ),
]);
Consulte el directorio de ejemplos para obtener más información.
Consulte las versiones para obtener más información sobre los cambios recientes.
Se pueden realizar pruebas con múltiples versiones de PHP/PowerDNS utilizando el docker-compose.yml
proporcionado y el script de shell run-tests.sh
:
$ docker-compose up -d
$ ./run-tests.sh
Después de ejecutar docker-compose up -d
espere unos segundos para que se pueda inicializar PowerDNS. Puede dejar los contenedores en ejecución y llamar al script de prueba varias veces.
Para realizar pruebas con una combinación PHP/PowerDNS específica, puede proporcionar la versión de PHP como primer parámetro y la versión de PowerDNS como segundo parámetro:
$ ./run-tests.sh 7.4 4.3
Consulte CONTRIBUCIÓN y CODE_OF_CONDUCT para obtener más detalles.
Si descubre algún problema relacionado con la seguridad, envíe un correo electrónico a [email protected] en lugar de utilizar el rastreador de problemas.
La Licencia MIT (MIT). Consulte el archivo de licencia para obtener más información.