lfischer/internet-available

一个小组件,用于检查当前互联网是否可用/可访问

1.0.1 2020-01-23 16:15 UTC

This package is auto-updated.

Last update: 2024-09-24 02:47:30 UTC


README

一个小组件,用于检查互联网是否可访问。灵感来自 Stackoverflow #4860365。此项目遵循 语义化版本控制

使用方法

非常基本的使用(使用默认参数)如下所示

$available = \lfischer\internet\Internet::available();

当然,您还可以提供一些选项来处理响应,以满足您的需求

use \lfischer\internet\Internet;
use \lfischer\internet\InternetException;
use \lfischer\internet\InternetProblemException;

// Check the availability by connecting to Google on port 80.
$available = (new Internet('www.google.com', 80))->check();

//
try {
    $internet = new Internet(
        'www.google.com', 
        80, 
        Internet::EXCEPTION_ON_UNAVAILABILITY + Internet::PROBLEM_AS_EXCEPTION
    );

    $available = $internet->check();
} catch (InternetException $e) {
    // The internet is not available.
    $internet->getErrorString();
    $internet->getErrorNumber();
    $e->getMessage();
} catch (InternetProblemException $e) {
    // There was a problem while checking the availability.
     $internet->getErrorString();
     $internet->getErrorNumber();
     $e->getMessage();
 }

选项

您可以将一些选项传递以更改在出现问题时行为。

  • Internet::EXCEPTION_ON_UNAVAILABILITY
    如果互联网不可用,将抛出 InternetException 异常(而不是返回 false)。
  • Internet::PROBLEM_AS_EXCEPTION
    如果由于问题而无法检查互联网可用性,将抛出 InternetProblemException 异常(而不是返回 false)。
  • Internet::PROBLEM_AS_TRUE
    在可用性检查过程中出现问题时,将返回 true,因为您希望假设其他事情出了问题。

静态代码分析和代码风格

代码正在使用 vimeo/psalm 的帮助进行静态分析。将使用 friendsofphp/php-cs-fixer 检查/应用 PSR2 代码风格。