Download the PHP package xbnz/laravel-multi-ip without Composer

On this page you can find all versions of the php package xbnz/laravel-multi-ip. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-multi-ip

GitHub Workflow Status

Laravel Multi API

Supported APIs

Provider Key required Normalized Object
Abstractapi.com NormalizedGeolocationResultsData::class
Abuseipdb.com NormalizedGeolocationResultsData::class
Ipapi.co NormalizedGeolocationResultsData::class
Ipapi.com NormalizedGeolocationResultsData::class
Ip-api.com NormalizedGeolocationResultsData::class
Ipdata.co NormalizedGeolocationResultsData::class
Ipgeolocation.io NormalizedGeolocationResultsData::class
Ipinfo.io NormalizedGeolocationResultsData::class
Mtr.sh: ping MtrDotShPingResultsData::class
Mtr.sh: mtr MtrDotShMtrResultsData::class

Installation

Ensure that your composer.json file tells Laravel to auto-wire package service providers to your project:

The config files

Support for multiple API keys

You may configure each driver in the config files with multiple API keys. API keys will be chosen randomly per HTTP request. If you have elected to use retry functionality, the key will be rehydrated on every try.

Caching

Caching is enforced by default as the alternative with exhaust your rate limiting very quickly. If you are using a time-sensitive service, use Laravel's Config facade to reduce caching before your API call.

Proxies

HTTP, HTTPS, SOCKS supported. Please use the URL structure denoted above. If you have elected to use retry functionality, the proxy will be rehydrated on every try.

API downtime can disrupt your app. Plan ahead.

Geolocation php (11)

Geolocation

The minimum normalized response you can expect from each IP API. Note there may be null values, refer to NormalizedGeolocationResultsData::class for structure.

New Project (1)

Combining all of your APIs

You can receive complete information for an IP using all of your APIs to put together a comprehensive report. Increase your async value in the resolver.php config file to expedite the process if you have many IPs and drivers.

Raw API output

If you do not wish to receive condensed, normalized information, you may use the raw method:

ℹ️ This works in the same way as normalize(). Keep in mind there is no guarantee of data integrity with this option, the result is returned directly from the API in most cases.

Alternative to chaining

Downtime monitoring with the MTR.sh API

MTR.sh is a Looking Glass API that gives you access to hundreds of networks around the world. This is particularly useful for downtime monitoring. The problem with the MTR.sh API is that the result is not friendly for programming languages. This is no longer the case for Laravel developers.

MTR.sh search term examples:

Choose what MTR.sh networks you would like to use

Search type Search term
Country ['Germany', 'Brazil', 'Canada']
City ['Frankfurt', 'Rio', 'Toronto']
Continent ['Europe', 'South America', 'North America']
UN/LOCODE ['defra', 'brrio', 'cator']
ISP ['G-Core Labs', 'Anexia', 'Google']

For a complete list, visit https://mtr.sh/probes.json

ℹ️ Some MTR.sh probes may not support IPv6, or may not have some abilities, such as the ability to perform MTR tests. When you specify a search term, if no probes match the IP or test type capability, MtrProbeNotFoundException::class will be thrown

New Project (2)

A quick word on the design

If you would like to extend the package to support other APIs, please keep the following in mind:

Contributing

Pull requests and issues are welcome.

License

MIT


All versions of laravel-multi-ip with dependencies

PHP Build Version
Package Version
Requires guzzlehttp/guzzle Version ^7.4
ext-intl Version *
caseyamcl/guzzle_retry_middleware Version ^2.7
kevinrob/guzzle-cache-middleware Version ^4.0
illuminate/config Version ^9.0
illuminate/cache Version ^9.0
illuminate/collections Version ^9.0
illuminate/http Version ^9.0
illuminate/support Version ^9.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package xbnz/laravel-multi-ip contains the following files

Loading the files please wait ....