joelwmale/php-ssl-certificate

Easily retrieve the ssl certificate for any host

Maintainers

Package info

github.com/joelwmale/php-ssl-certificate

pkg:composer/joelwmale/php-ssl-certificate

Statistics

Installs: 3 387

Dependents: 0

Suggesters: 0

Stars: 6

Open Issues: 0

4.0.0 2026-02-13 00:19 UTC

This package is auto-updated.

Last update: 2026-03-13 00:39:22 UTC


README

Build Status Total Downloads Latest Stable Version License

This package makes it easy to download a certificate for a host.

Version Compatibility

PHP Version Package Version
8.3+ 4.x
8.0 - 8.2 3.x

Usage

use Joelwmale\SslCertificate\Certificate;

$certificate = Certificate::forHost('joelmale.com');

Installation

You can install the package via composer:

composer require joelwmale/php-ssl-certificate

Available Properties & Methods

All properties are readonly.

$certificate->issuer;              // string - the issuer of the certificate
$certificate->domain;              // string - the primary domain on the certificate
$certificate->additionalDomains;   // array  - all the additional/alt domains on the certificate
$certificate->valid;               // bool   - true if valid, false if not
$certificate->issued;              // Carbon - when the certificate was issued
$certificate->expires;             // Carbon - when the certificate expires
$certificate->expiresIn;           // int    - days until the certificate expires
$certificate->expired;             // bool   - true if the certificate is expired
$certificate->signatureAlgorithm;  // string - the signature algorithm used to sign the certificate
$certificate->isSelfSigned;        // bool   - true if the certificate was self signed

Get raw certificate as JSON

$certificate->getRawCertificateFieldsAsJson();

Determining if the certificate is valid at a given date

Returns true if the certificate will still be valid. Takes a Carbon instance as the first parameter.

$certificate->isValidAt(Carbon::today()->addMonth(1));

Determining if certificate contains/covers a domain

Returns true if the certificate contains the domain

$certificate->containsDomain('joelmale.dev');

Testing

$ composer test

Changelog

Please see CHANGELOG for a list of recent changes.