解析、构建和操作URL

2.0.0 2019-03-28 09:42 UTC

This package is auto-updated.

Last update: 2024-09-28 10:49:52 UTC


README

Latest Version on Packagist Software License Build Status StyleCI Total Downloads

一个简单的包,用于处理应用中的URL。

检索URL的部分

use Spatie\Url\Url;

$url = Url::fromString('https://spatie.be/opensource');

echo $url->getScheme(); // 'https'
echo $url->getHost(); // 'spatie.be'
echo $url->getPath(); // '/opensource'

转换URL的任何部分(Url类是不可变的)

$url = Url::fromString('https://spatie.be/opensource');

echo $url->withHost('github.com')->withPath('spatie');
// 'https://github.com/spatie'

检索和转换查询参数

$url = Url::fromString('https://spatie.be/opensource?utm_source=github&utm_campaign=packages');

echo $url->getQuery(); // 'utm_source=github&utm_campaign=packages'
echo $url->getQueryParameter('utm_source'); // 'github'
echo $url->withoutQueryParameter('utm_campaign'); // 'https://spatie.be/opensource?utm_source=github'

检索路径段

$url = Url::fromString('https://spatie.be/opensource/laravel');

echo $url->getSegment(1); // 'opensource'
echo $url->getSegment(2); // 'laravel'

实现PSR-7的UriInterface接口

class Url implements UriInterface { /* ... */ }

league/uri是一个比这个更强大的包。这个包存在的主要原因是因为其他替代方案需要非标准的php扩展。如果你处理特殊的字符编码或需要防弹验证,你肯定更愿意使用league/uri

Spatie是一家位于比利时的安特卫普的网页设计公司。你可以在我们的网站上找到所有开源项目的概述在这里

安装

你可以通过composer安装此包

composer require spatie/url

用法

用法相当简单。查看本readme最上面的代码示例。

变更日志

请参阅变更日志以获取更多信息,了解最近有哪些更改。

测试

composer test

贡献

请参阅贡献以获取详细信息。

安全性

如果你发现任何与安全性相关的问题,请通过freek@spatie.be发送电子邮件,而不是使用问题跟踪器。

Postcardware

你可以自由使用这个包,但如果它进入了你的生产环境,我们非常希望你能从你的家乡寄给我们一张明信片,并提到你正在使用我们的哪些包。

我们的地址是:Spatie,Samberstraat 69D,2060 安特卫普,比利时。

我们在我们的公司网站上发布所有收到的明信片在这里

鸣谢

支持我们

Spatie是一家位于比利时的安特卫普的网页设计公司。你可以在我们的网站上找到所有开源项目的概述在这里

你的业务依赖于我们的贡献吗?请联系我们,并在Patreon上支持我们。所有的承诺都将专门用于分配人力进行维护和新酷炫的东西。

许可证

MIT许可证(MIT)。请参阅许可证文件以获取更多信息。