Download the PHP package softcreatr/php-mime-detector without Composer

On this page you can find all versions of the php package softcreatr/php-mime-detector. 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 php-mime-detector

PHP Mime Detector

Detecting the real type of (binary) files doesn't have to be difficult. Checking a file's extension is not reliable and can lead to serious security issues.

This package helps you determine the correct type of files by reading them byte by byte (up to 4096 bytes) and checking for magic numbers.

However, this package isn't a replacement for any security software. It simply aims to produce fewer false positives than a simple extension check would.

A list of supported file types can be found on this Wiki page.

Why a Separate Class?

You may wonder why we don't just rely on extensions like Fileinfo. Here's a brief background:

We develop extensions and applications for an Open Source PHP Framework, creating web software for the masses. Many of our customers and users of our free products are on shared hosting without any ability to install or manage PHP extensions. Therefore, our goal is to develop solutions with minimal dependencies while providing as much functionality as possible.

When developing a solution that allows people to convert HEIF/HEIC files to a more "standardized" format (using our own external API), we had trouble detecting these files because this format isn't widely recognized by most web servers. Since checking the file extension isn't reliable, we needed to find a reusable solution that works for most of our clients. This led to the creation of our Mime Detector, based on magic number checks.

Requirements

Installation

Install this package using Composer in the root directory of your project:

Usage

Here is an example of how this package makes it easy to determine the MIME type and corresponding file extension of a given file:

Testing

This project uses PHPUnit for testing. To run tests, use the following command:

To run a full test suite, you can use a set of provided test files. These files are not included in the Composer package or Git repository, so you must clone this repository and initialize its submodules:

After that, install the necessary dependencies with composer install, and run PHPUnit as described above.

ToDo

Contributing

Please see CONTRIBUTING for details.

When adding new detections, please provide at least one sample file to ensure the detection works as expected.

License

ISC License

Free Software, Hell Yeah!


All versions of php-mime-detector with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1.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 softcreatr/php-mime-detector contains the following files

Loading the files please wait ....