Git Product home page Git Product logo

fasterimage's Introduction

FasterImage CircleCI Coveralls Minimum PHP Version Packagist Version Packagist Downloads License

FasterImage finds the dimensions or filetype of a remote image file given its uri by fetching as little as needed, based on the excellent Ruby implementation by Stephen Sykes and PHP implementation by Tom Moor.

FasterImage uses the curl_muli* suite to run requests in parallel. Currently supports JPG, GIF, PNG, WEBP, BMP, PSD, TIFF, SVG, and ICO files.

Usage

        $client = new \FasterImage\FasterImage();
        
        $images = $client->batch([
            'http://wwww.example.com/image1.jpg',
            'http://wwww.example.com/image2.gif',
            'http://wwww.example.com/image3.png',
            'http://wwww.example.com/image4.bmp',
            'http://wwww.example.com/image5.tiff',
            'http://wwww.example.com/image6.psd',
            'http://wwww.example.com/image7.webp',
            'http://wwww.example.com/image8.ico',
            'http://wwww.example.com/image9.cur',
            'http://wwww.example.com/image10.svg'
        ]);
        
        foreach ($images as $image) {
            list($width,$height) = $image['size'];
        }

Install

composer require fasterimage/fasterimage

Alternatively, add "fasterimage/fasterimage": "~1.5" to your composer.json

Changelog

  • v1.5.0 - Fallback support when curl_multi_init() is not available
  • v1.4.0 - Add support for parsing dimensions from SVG images
  • v1.3.0 - Add ability for user agent, buffer size, and SSL host/peer verification to be overridden
  • v1.2.1 - Limit isRotated to only check for valid orientation values
  • v1.2.0 - Add option to include content-length in result set
  • v1.1.2 - Update Accept header to accept images
  • v1.1.1 - Properly handle jpeg's with corrupted Exif tags
  • v1.1.0 - Return message in return array when curl fails
  • v1.0.3 - Use external stream package
  • v1.0.2 - Fail invalid image exceptions gracefully when using batch requests
  • v1.0.1 - Support PHP v5.4+
  • v1.0.0 - Stable Release - Support for .PSD, .ICO + .CUR
  • v0.0.7 - Remove support for PHP v5.4
  • v0.0.6 - Add option to set timeout of requests, support for EXIF in .jpgs, better support for .bmp (including negative height bitmaps) and normalized response indexes for all file types
  • v0.0.5 - Support for .webp
  • v0.0.4 - Support for .tiff and exceptions for unknown file types
  • v0.0.3 - Force curl to follow redirects so you get less bad responses
  • v0.0.2 - Update curl headers to mimic browser so you get less bad responses
  • v0.0.1 - Support for .jpg, .bmp, .gif, .png and parallel requests

References

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.