infusionweb/laravel-url-resolver-provider

提供 Laravel 5 的服务提供者和 facade 用于 URLResolver.php。

0.1.0 2016-05-18 23:23 UTC

This package is auto-updated.

Last update: 2024-08-28 09:40:35 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

用于在 Laravel 中使用 URLResolver.php 的简单包装器

此包提供了一个 Laravel 5 服务提供者和 facade,用于 mdf/php-url-resolver,它是 mattwright/URLResolver.php 的分支,似乎不再维护。

URLResolver.php 是一个 PHP 类,试图将 URL 解析为最终的、规范化的链接。在今天的互联网上,链接缩短、跟踪代码等可能导致许多不同的链接最终指向同一资源。通过遵循 HTTP 重定向并解析网页中的开放图和规范 URL,URLResolver.php 试图解决这个问题。

启用并配置后,此包通过 Laravel facade 提供更方便地使用 URLResolver.php 功能。

安装

步骤 1: Composer

通过 Composer 命令行

$ composer require infusionweb/laravel-url-resolver-provider

或添加包到您的 composer.json

{
    "require": {
        "infusionweb/laravel-url-resolver-provider": "~0.1.0"
    }
}

步骤 2: 注册服务提供者

将服务提供者添加到您的 config/app.php

'providers' => [
    //
    InfusionWeb\Laravel\Providers\UrlResolver::class,
];

步骤 3: 启用 Facade

将 facade 添加到您的 config/app.php

'aliases' => [
    //
    'Resolver' => InfusionWeb\Laravel\Facades\UrlResolver::class,
];

使用方法

简单情况

<?php

use Resolver;

$url = 'http://bit.ly/1R6M0uY';

$resolved = Resolver::resolveURL($url)->getURL();

带有额外设置

<?php

use Resolver;

// Change the default user agent.
Resolver::setUserAgent('Mozilla/5.0 (compatible; YourAppName/1.0; +http://www.example.com)');

// Set a temporary file for session cookie storage.
Resolver::setCookieJar('/tmp/url_resolver.cookies');

// Test result object for additional information.
$url = 'http://goo.gl/0GMP1';
$url_result = $resolver->resolveURL($url);
if ($url_result->didErrorOccur()) {
    print "Error resolving $url:\n  ".$url_result->getErrorMessageString();
}
else {
    print $url_result->getHTTPStatusCode().': '.$url_result->getURL();
}

有关更多文档,请参阅 URLResolver.php 文档

致谢

许可

MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件