Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

PHP 7.1+ Query String manipulation library. No dependency, immutable, lightweight, PSR-7 compliant.

License

Notifications You must be signed in to change notification settings

bpolaszek/querystring

Repository files navigation

Latest Stable Version License CI Workflow Coverage Quality Score Total Downloads

QueryString

A lightweight, object-oriented, Query String manipulation library.

Why?

Because I needed an intuitive way to add or remove parameters from a query string, in any project.

Oh, and, I also wanted that ['foos' => ['foo', 'bar']] resolved to foos[]=foo&foos[]=bar instead of foos[0]=foo&foos[1]=bar, unlike many libraries do.

Thanks to object-oriented design, you can define the way query strings are parsed and rendered.

Usage

Simple as that:

require_once __DIR__ . '/vendor/autoload.php';
use function BenTools\QueryString\query_string;
$qs = query_string(
 'foo=bar&baz=bat'
);
$qs = $qs->withParam('foo', 'foofoo')
 ->withoutParam('baz')
 ->withParam('ho', 'hi');
print_r($qs->getParams());
/* Array
(
 [foo] => foofoo
 [ho] => hi
) */
print $qs; // foo=foofoo&ho=hi

Documentation

Instantiation / Parsing

Manipulate parameters

Render as string

Installation

PHP 7.1+ is required.

composer require bentools/querystring:^1.0

Tests

./vendor/bin/phpunit

License

MIT

See also

bentools/uri-factory - A PSR-7 UriInterface factory based on your own dependencies.

bentools/pager - A simple, object oriented Pager.

bentools/where - A framework-agnostic fluent, immutable, SQL query builder.

bentools/picker - Pick a random item from an array, with weight management.

bentools/psr7-request-matcher - A PSR-7 request matcher interface.

bentools/cartesian-product - Generate all possible combinations from a multidimensionnal array.

bentools/string-combinations - A string combinations generator.

bentools/flatten-iterator - An iterator that flattens multiple iterators or arrays.

About

PHP 7.1+ Query String manipulation library. No dependency, immutable, lightweight, PSR-7 compliant.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /