mepihindeveloper/php-query-string

处理查询字符串的组件

v1.0.4 2022-10-10 11:15 UTC

This package is auto-updated.

Last update: 2024-09-10 15:31:50 UTC


README

release Packagist Version PHP Version Require license

build codecov

查询字符串组件。主要功能是通过实现“建造者”设计模式来构建查询字符串。查询字符串位于URI中的?之后。

结构

src/
--- exceptions/
------ QueryStringNotFoundException.php
--- interfaces/
------ QueryStringInterface.php
--- QueryString.php
--- QueryStringAbstract.php
--- QueryStringBuilder.php

interfaces目录中存储实现自定义QueryString类所需的接口。`QueryString`类作为查询字符串的对象。在exceptions目录中存储必要的异常。`QueryStringNotFoundException`异常用于识别缺少必要键的错误。

`QueryString`类实现了查询字符串本身。自定义参数类应继承自`QueryString`类。

`QueryStringAbstract`类实现了所有查询字符串的共同逻辑。在这种情况下,它存储必要的对象属性。

`QueryStringBuilder`类实现了构建`QueryString`类对象的逻辑。

参数构建示例

<?php

declare(strict_types = 1);

use mepihindeveloper\components\query\param\ParamBuilder;
use mepihindeveloper\components\query\QueryStringBuilder;

error_reporting(E_ALL);
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');

require_once 'vendor/autoload.php';

$uri = 'foo://example.com:8042/over/there?name=ferret&a[]=11&a[]=22#nose';
$query = (new QueryStringBuilder())->setQueryDataByUri($uri)->build();
$query2 = (new QueryStringBuilder())->setParams([
    (new ParamBuilder())->setName('name')->setValue('ferret')->build(),
    (new ParamBuilder())->setName('a')->setValue([11, 22])->build(),
])->setFragment('nose')->build();

可用方法

QueryStringInterface

QueryStringBuilder

联系信息

您可以在VKontakte社交网络上联系我:VKontakte: Максим Епихин

如果您愿意通过电子邮件联系,可以使用此邮箱地址:mepihindeveloper@gmail.com

我的YouTube频道,专注于开发网页和游戏项目:YouTube: Максим Епихин

您可以通过转账到Yandex.Money来支持我:转账