joelwmale / php-ssl-certificate
Easily retrieve the ssl certificate for any host
Installs: 3 371
Dependents: 0
Suggesters: 0
Security: 0
Stars: 6
Watchers: 1
Forks: 1
Open Issues: 0
pkg:composer/joelwmale/php-ssl-certificate
Requires
- php: ^8.3
- ext-intl: *
- nesbot/carbon: ^3.11
Requires (Dev)
- laravel/pint: ^1.26
- pestphp/pest: ^4.2
This package is auto-updated.
Last update: 2026-02-13 00:29:25 UTC
README
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.