PHP Package: azjezz/psl
PSL is a PHP library for public suffix list handling, providing efficient domain parsing and validation functions.
Current Version: 3.3.0
Last Updated: 2025-05-15
PHP Requirement: ~8.2.0 || ~8.3.0 || ~8.4.0
⚠️ To ensure full functionality, the above dependencies might be required.
Package Description
Public Suffix List (PSL) is a comprehensive library designed to parse and validate domain names effectively. It offers intricate domain handling functionalities, ensuring accurate results for domain-related operations in PHP applications.
Classes:
- Psl\TCP\ConnectOptions
- Psl\TCP\Server
- Psl\TCP\ServerOptions
- Psl\Hash\Context
- Psl\Hash\Exception\ExceptionInterface
- Psl\Hash\Exception\RuntimeException
- Psl\Result\ResultInterface
- Psl\Result\Success
- Psl\Result\Stats
- Psl\Result\Failure
- Psl\Promise\PromiseInterface
- Psl\SecureRandom\Exception\InvalidArgumentException
- Psl\SecureRandom\Exception\InsufficientEntropyException
- Psl\SecureRandom\Exception\ExceptionInterface
- Psl\Math\Exception\InvalidArgumentException
- Psl\Math\Exception\OverflowException
- Psl\Math\Exception\ArithmeticException
- Psl\Math\Exception\ExceptionInterface
- Psl\Math\Exception\DivisionByZeroException
- Psl\Vec\Exception\LogicException
- Psl\Vec\Exception\ExceptionInterface
- Psl\Comparison\Exception\IncomparableException
- Psl\Comparison\Comparable
- Psl\Comparison\Equable
- Psl\Channel\ChannelInterface
- Psl\Channel\ReceiverInterface
- Psl\Channel\SenderInterface
- Psl\Channel\Exception\FullChannelException
- Psl\Channel\Exception\EmptyChannelException
- Psl\Channel\Exception\ClosedChannelException
- Psl\Channel\Exception\ExceptionInterface
- Psl\Channel\Internal\UnboundedChannelState
- Psl\Channel\Internal\UnboundedSender
- Psl\Channel\Internal\ChannelSideTrait
- Psl\Channel\Internal\BoundedChannelState
- Psl\Channel\Internal\BoundedReceiver
- Psl\Channel\Internal\BoundedSender
- Psl\Channel\Internal\UnboundedReceiver
- Psl\File\WriteHandleInterface
- Psl\File\ReadWriteHandle
- Psl\File\ReadWriteHandleInterface
- Psl\File\ReadHandleInterface
- Psl\File\Lock
- Psl\File\HandleInterface
- Psl\File\Exception\InvalidArgumentException
- Psl\File\Exception\AlreadyCreatedException
- Psl\File\Exception\AlreadyLockedException
- Psl\File\Exception\NotFileException
- Psl\File\Exception\ExceptionInterface
- Psl\File\Exception\NotFoundException
- Psl\File\Exception\NotWritableException
- Psl\File\Exception\NotReadableException
- Psl\File\Exception\RuntimeException
- Psl\File\ReadHandle
- Psl\File\Internal\ResourceHandle
- Psl\File\Internal\AbstractHandleWrapper
- Psl\File\WriteHandle
- Psl\Collection\MutableIndexAccessInterface
- Psl\Collection\MutableMapInterface
- Psl\Collection\AccessibleCollectionInterface
- Psl\Collection\Vector
- Psl\Collection\MutableMap
- Psl\Collection\CollectionInterface
- Psl\Collection\MutableAccessibleCollectionInterface
- Psl\Collection\MutableCollectionInterface
- Psl\Collection\MutableSet
- Psl\Collection\MapInterface
- Psl\Collection\Set
- Psl\Collection\SetInterface
- Psl\Collection\VectorInterface
- Psl\Collection\Exception\InvalidOffsetException
- Psl\Collection\Exception\ExceptionInterface
- Psl\Collection\Exception\OutOfBoundsException
- Psl\Collection\Exception\RuntimeException
- Psl\Collection\Map
- Psl\Collection\MutableVectorInterface
- Psl\Collection\MutableSetInterface
- Psl\Collection\IndexAccessInterface
- Psl\Collection\MutableVector
- Psl\Type\NonNullType
- Psl\Type\TypeInterface
- Psl\Type\Type
- Psl\Type\Exception\CoercionException
- Psl\Type\Exception\ExceptionInterface
- Psl\Type\Exception\AssertException
- Psl\Type\Exception\Exception
- Psl\Type\Internal\ResourceType
- Psl\Type\Internal\F64Type
- Psl\Type\Internal\I8Type
- Psl\Type\Internal\NonEmptyDictType
- Psl\Type\Internal\NonEmptyStringType
- Psl\Type\Internal\PositiveIntType
- Psl\Type\Internal\PathExpression
- Psl\Type\Internal\NullableType
- Psl\Type\Internal\DictType
- Psl\Type\Internal\ConvertedType
- Psl\Type\Internal\U8Type
- Psl\Type\Internal\IterableType
- Psl\Type\Internal\MixedVecType
- Psl\Type\Internal\ClassStringType
- Psl\Type\Internal\BackedEnumType
- Psl\Type\Internal\OptionalType
- Psl\Type\Internal\UIntType
- Psl\Type\Internal\InstanceOfType
- Psl\Type\Internal\VectorType
- Psl\Type\Internal\NullType
- Psl\Type\Internal\IntersectionType
- Psl\Type\Internal\MixedDictType
- Psl\Type\Internal\NumericStringType
- Psl\Type\Internal\U16Type
- Psl\Type\Internal\LiteralScalarType
- Psl\Type\Internal\ObjectType
- Psl\Type\Internal\F32Type
- Psl\Type\Internal\I64Type
- Psl\Type\Internal\VecType
- Psl\Type\Internal\BoolType
- Psl\Type\Internal\FloatType
- Psl\Type\Internal\UnionType
- Psl\Type\Internal\NumType
- Psl\Type\Internal\IntType
- Psl\Type\Internal\U32Type
- Psl\Type\Internal\BackedEnumValueType
- Psl\Type\Internal\I16Type
- Psl\Type\Internal\NonEmptyVecType
- Psl\Type\Internal\MixedType
- Psl\Type\Internal\ScalarType
- Psl\Type\Internal\SetType
- Psl\Type\Internal\ArrayKeyType
- Psl\Type\Internal\UnitEnumType
- Psl\Type\Internal\MutableSetType
- Psl\Type\Internal\ShapeType
- Psl\Type\Internal\I32Type
- Psl\Type\Internal\MutableMapType
- Psl\Type\Internal\MapType
- Psl\Type\Internal\StringType
- Psl\Type\Internal\MutableVectorType
- Psl\Observer\ObserverInterface
- Psl\Observer\SubjectInterface
- Psl\Str\Exception\InvalidArgumentException
- Psl\Str\Exception\LogicException
- Psl\Str\Exception\ExceptionInterface
- Psl\Str\Exception\OutOfBoundsException
- Psl\Async\OptionalIncrementalTimeout
- Psl\Async\KeyedSequence
- Psl\Async\Deferred
- Psl\Async\Sequence
- Psl\Async\Semaphore
- Psl\Async\Scheduler
- Psl\Async\KeyedSemaphore
- Psl\Async\Exception\InvalidArgumentException
- Psl\Async\Exception\UnhandledAwaitableException
- Psl\Async\Exception\TimeoutException
- Psl\Async\Exception\ResourceClosedException
- Psl\Async\Exception\ExceptionInterface
- Psl\Async\Exception\CompositeException
- Psl\Async\Exception\RuntimeException
- Psl\Async\Internal\AwaitableIterator
- Psl\Async\Internal\AwaitableIteratorQueue
- Psl\Async\Internal\State
- Psl\Async\Awaitable
- Psl\Iter\Exception\InvalidArgumentException
- Psl\Iter\Exception\ExceptionInterface
- Psl\Iter\Exception\OutOfBoundsException
- Psl\Iter\Iterator
- Psl\PseudoRandom\Exception\InvalidArgumentException
- Psl\PseudoRandom\Exception\ExceptionInterface
- Psl\Default\DefaultInterface
- Psl\Json\Exception\DecodeException
- Psl\Json\Exception\EncodeException
- Psl\Json\Exception\ExceptionInterface
- Psl\Dict\Exception\LogicException
- Psl\Dict\Exception\ExceptionInterface
- Psl\DataStructure\Stack
- Psl\DataStructure\QueueInterface
- Psl\DataStructure\Queue
- Psl\DataStructure\StackInterface
- Psl\DataStructure\PriorityQueueInterface
- Psl\DataStructure\Exception\UnderflowException
- Psl\DataStructure\Exception\ExceptionInterface
- Psl\DataStructure\PriorityQueue
- Psl\Encoding\Base64\Internal\Base64DotSlash
- Psl\Encoding\Base64\Internal\Base64
- Psl\Encoding\Base64\Internal\Base64UrlSafe
- Psl\Encoding\Base64\Internal\Base64DotSlashOrdered
- Psl\Encoding\Exception\RangeException
- Psl\Encoding\Exception\IncorrectPaddingException
- Psl\Encoding\Exception\ExceptionInterface
- Psl\Shell\Exception\InvalidArgumentException
- Psl\Shell\Exception\TimeoutException
- Psl\Shell\Exception\FailedExecutionException
- Psl\Shell\Exception\ExceptionInterface
- Psl\Shell\Exception\PossibleAttackException
- Psl\Shell\Exception\RuntimeException
- Psl\DateTime\DateTimeConvenienceMethodsTrait
- Psl\DateTime\TemporalInterface
- Psl\DateTime\TemporalConvenienceMethodsTrait
- Psl\DateTime\DateTimeInterface
- Psl\DateTime\Exception\InvalidArgumentException
- Psl\DateTime\Exception\UnderflowException
- Psl\DateTime\Exception\OverflowException
- Psl\DateTime\Exception\UnexpectedValueException
- Psl\DateTime\Exception\ExceptionInterface
- Psl\DateTime\Exception\ParserException
- Psl\DateTime\Exception\RuntimeException
- Psl\DateTime\Timestamp
- Psl\DateTime\DateTime
- Psl\DateTime\Duration
- Psl\IO\CloseReadWriteStreamHandleInterface
- Psl\IO\CloseStreamHandle
- Psl\IO\CloseSeekStreamHandle
- Psl\IO\WriteHandleInterface
- Psl\IO\CloseWriteHandleInterface
- Psl\IO\ReadWriteHandleInterface
- Psl\IO\WriteStreamHandle
- Psl\IO\SeekWriteStreamHandle
- Psl\IO\CloseReadWriteHandleInterface
- Psl\IO\SeekWriteStreamHandleInterface
- Psl\IO\CloseReadStreamHandle
- Psl\IO\SeekReadHandleInterface
- Psl\IO\StreamHandleInterface
- Psl\IO\CloseReadStreamHandleInterface
- Psl\IO\ReadStreamHandle
- Psl\IO\MemoryHandle
- Psl\IO\CloseWriteStreamHandle
- Psl\IO\Reader
- Psl\IO\CloseSeekStreamHandleInterface
- Psl\IO\CloseSeekReadWriteStreamHandleInterface
- Psl\IO\SeekReadStreamHandle
- Psl\IO\SeekWriteHandleInterface
- Psl\IO\SeekReadWriteStreamHandle
- Psl\IO\ReadHandleInterface
- Psl\IO\SeekReadWriteStreamHandleInterface
- Psl\IO\CloseSeekWriteStreamHandleInterface
- Psl\IO\CloseSeekHandleInterface
- Psl\IO\CloseSeekWriteHandleInterface
- Psl\IO\ReadWriteStreamHandleInterface
- Psl\IO\ReadHandleConvenienceMethodsTrait
- Psl\IO\CloseSeekReadStreamHandleInterface
- Psl\IO\CloseReadWriteStreamHandle
- Psl\IO\CloseSeekWriteStreamHandle
- Psl\IO\ReadWriteStreamHandle
- Psl\IO\SeekStreamHandleInterface
- Psl\IO\HandleInterface
- Psl\IO\SeekReadStreamHandleInterface
- Psl\IO\CloseSeekReadWriteHandleInterface
- Psl\IO\CloseReadHandleInterface
- Psl\IO\CloseSeekReadStreamHandle
- Psl\IO\ReadStreamHandleInterface
- Psl\IO\CloseHandleInterface
- Psl\IO\CloseWriteStreamHandleInterface
- Psl\IO\Exception\TimeoutException
- Psl\IO\Exception\ExceptionInterface
- Psl\IO\Exception\AlreadyClosedException
- Psl\IO\Exception\RuntimeException
- Psl\IO\WriteHandleConvenienceMethodsTrait
- Psl\IO\Internal\ResourceHandle
- Psl\IO\WriteStreamHandleInterface
- Psl\IO\SeekHandleInterface
- Psl\IO\SeekReadWriteHandleInterface
- Psl\IO\CloseSeekReadWriteStreamHandle
- Psl\IO\CloseSeekReadHandleInterface
- Psl\IO\CloseStreamHandleInterface
- Psl\IO\SeekStreamHandle
- Psl\Ref
- Psl\Regex\Exception\ExceptionInterface
- Psl\Regex\Exception\InvalidPatternException
- Psl\Regex\Exception\RuntimeException
- Psl\Unix\Server
- Psl\Filesystem\Exception\InvalidArgumentException
- Psl\Filesystem\Exception\NotSymbolicLinkException
- Psl\Filesystem\Exception\NotFileException
- Psl\Filesystem\Exception\ExceptionInterface
- Psl\Filesystem\Exception\NotFoundException
- Psl\Filesystem\Exception\NotReadableException
- Psl\Filesystem\Exception\NotDirectoryException
- Psl\Filesystem\Exception\RuntimeException
- Psl\Range\BetweenRange
- Psl\Range\FromRange
- Psl\Range\ToRange
- Psl\Range\UpperBoundRangeInterface
- Psl\Range\FullRange
- Psl\Range\LowerBoundRangeInterface
- Psl\Range\Exception\OverflowException
- Psl\Range\Exception\InvalidRangeException
- Psl\Range\Exception\ExceptionInterface
- Psl\Range\RangeInterface
- Psl\RandomSequence\MersenneTwisterSequence
- Psl\RandomSequence\SequenceInterface
- Psl\RandomSequence\SecureSequence
- Psl\RandomSequence\Internal\MersenneTwisterTrait
- Psl\RandomSequence\MersenneTwisterPHPVariantSequence
- Psl\Exception\InvalidArgumentException
- Psl\Exception\UnderflowException
- Psl\Exception\OverflowException
- Psl\Exception\UnexpectedValueException
- Psl\Exception\LogicException
- Psl\Exception\ExceptionInterface
- Psl\Exception\OutOfBoundsException
- Psl\Exception\InvariantViolationException
- Psl\Exception\RuntimeException
- Psl\Internal\Loader
- Psl\Network\Address
- Psl\Network\SocketOptions
- Psl\Network\StreamServerInterface
- Psl\Network\ServerInterface
- Psl\Network\Exception\InvalidArgumentException
- Psl\Network\Exception\TimeoutException
- Psl\Network\Exception\AlreadyStoppedException
- Psl\Network\Exception\ExceptionInterface
- Psl\Network\Exception\RuntimeException
- Psl\Network\SocketInterface
- Psl\Network\Internal\AbstractStreamServer
- Psl\Network\Internal\Socket
- Psl\Network\StreamSocketInterface
- Psl\Fun\Internal\LazyEvaluator
- Psl\Option\Option
- Psl\Option\Exception\NoneException
- Psl\Option\Exception\ExceptionInterface
Download Latest Version: 3.3.0

Previous Versions
Code Integration Example
Make sure to include the correct namespace and class paths for proper usage.
<?php
// Example from PHPlibraries.com
require_once 'libs/azjezz/psl/3.3.0/loader.php';
require_once 'libs/guzzle/psr7/2.7.1/loader.php';
require_once 'libs/php-fig/simple-cache/{lib_version}/loader.php';
use Pdp\PublicSuffixList;
use Pdp\Rules;
$obj = new PublicSuffixList();
echo '✅ Test OK: ' . get_class($obj);
?>
We aim to make using PHP packages easier without Composer. If something doesn't work, let us know — we'll fix it promptly.
Community Discussion
Ask questions, share tips, or report issues below.