Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Psl Laravel Package

azjezz/psl

PSL is a modern, well-typed standard library for PHP 8.4+, inspired by HHVM’s HSL. It offers safer, predictable APIs for async, collections, networking, I/O, crypto, terminal UI, and robust data validation—replacing brittle built-ins with consistent alternatives.

View on GitHub
Deep Wiki
Context7

URI

The URI component provides RFC 3986 compliant parsing, normalization, reference resolution, and RFC 6570 URI Template expansion.

Parsing

Parse any URI string into a structured, normalized URI object:

@example('networking/uri-parsing.php')

Normalization is applied eagerly: scheme and host are lowercased, percent-encoding is normalized (unreserved characters decoded, hex digits uppercased), and dot segments (/../, /./) are removed.

Reference Resolution

Resolve relative references against a base URI per RFC 3986 Section 5:

@example('networking/uri-resolve.php')

URI Templates

Parse and expand RFC 6570 URI Templates (Levels 1–4):

@example('networking/uri-template.php')

All operators are supported: simple {var}, reserved {+var}, fragment {#var}, label {.var}, path {/var}, parameter {;var}, query {?var}, and continuation {&var}. Modifiers include prefix {var:3} and explode {var*}.

Authority & Hosts

The authority component is structured into user info, host, and port. Hosts are typed - either an IP address or a registered name:

@example('networking/uri-authority.php')

IPv6 addresses use RFC 5952 canonical form and support RFC 6874 zone identifiers.

Standards

RFC Title
RFC 3986 Uniform Resource Identifier (URI): Generic Syntax
RFC 6570 URI Template (Levels 1–4)
RFC 6874 IPv6 Zone Identifiers in URIs
RFC 5952 IPv6 Address Text Representation

See src/Psl/URI/ for the full API.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport
twbs/bootstrap4