Skip to content

myerscode/utilities-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web Utilities

A fluent interface for interacting with web sites, page content and URLs.

Latest Stable Version Total Downloads PHP Version Require License Tests codecov

Requirements

  • PHP >= 8.5
  • ext-curl
  • ext-dom
  • ext-filter

Install

composer require myerscode/utilities-web

Usage

use Myerscode\Utilities\Web\Utility;

$web = new Utility('https://example.com');
// or use the static factory
$web = Utility::make('https://example.com');

// Get content from a URL
$content = $web->content()->content();

// Get a DOM crawler for the page
$dom = $web->content()->dom();

// Decode JSON responses
$data = $web->content()->json();

// Ping a host
$result = $web->ping()->ping();
$alive = $web->ping()->isAlive();

// Quick liveness check
$web->isAlive();

// Work with URLs
$uri = $web->url();

// Check response status
$response = $web->response()->check(\Myerscode\Utilities\Web\Data\ResponseFrom::CURL);
$response->isSuccessful(); // true for 2xx

Available Utilities

Fetch and interact with web page content.

Ping hosts and check latency.

Parse, build and manipulate URLs.

Exception Handling

All package exceptions extend Myerscode\Utilities\Web\Exceptions\WebUtilityException, which extends RuntimeException. This allows catching all package exceptions in one go:

use Myerscode\Utilities\Web\Exceptions\WebUtilityException;

try {
    $content = $web->content()->content();
} catch (WebUtilityException $e) {
    // Handle any package exception
}

License

The MIT License (MIT). Please see License File for more information.

About

a fluent interface for interacting with web sites, page content and urls

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages