finfo_open

finfo::__construct

(PHP >= 5.3.0, PHP 7, PHP 8, PECL fileinfo >= 0.1.0)

finfo_open -- finfo::__constructCreate a new finfo instance

Description

Procedural style

finfo_open(int $flags = FILEINFO_NONE, ?string $magic_database = null): finfo|false

Object-oriented style (constructor):

public finfo::__construct(int $flags = FILEINFO_NONE, ?string $magic_database = null)

This function opens a magic database and returns its instance.

Parameters

flags

One or disjunction of more Fileinfo constants.

magic_database

Name of a magic database file, usually something like /path/to/magic.mime. If not specified, the MAGIC environment variable is used. If the environment variable isn't set, then PHP's bundled magic database will be used.

Passing null or an empty string will be equivalent to the default value.

Return Values

(Procedural style only) Returns an finfo instance on success, or false on failure.

Changelog

Version Description
8.1.0 Returns an finfo instance now; previously, a resource was returned.
8.0.3 magic_database is nullable now.

Examples

Example #1 Object-oriented style

<?php
$finfo 
= new finfo(FILEINFO_MIME"/usr/share/misc/magic"); // return mime type ala mimetype extension

/* get mime-type for a specific file */
$filename "/usr/local/something.txt";
echo 
$finfo->file($filename);

?>

Example #2 Procedural style

<?php
$finfo 
finfo_open(FILEINFO_MIME"/usr/share/misc/magic"); // return mime type ala mimetype extension

if (!$finfo) {
    echo 
"Opening fileinfo database failed";
    exit();
}

/* get mime-type for a specific file */
$filename "/usr/local/something.txt";
echo 
finfo_file($finfo$filename);

/* close connection */
finfo_close($finfo);
?>

The above example will output:

text/plain; charset=us-ascii

Notes

Note:

Generally, using the bundled magic database (by leaving magic_database and the MAGIC environment variables unset) is the best course of action unless you specifically need a custom magic database.

See Also

Here you can write a comment


Please enter at least 10 characters.
Loading... Please wait.
* Pflichtangabe
There are no comments available yet.

Was genau bedeutet "Vibe Coding"? Ein tiefgehender Blick für Entwickler

In der Welt der Softwareentwicklung gibt es unzählige Wege, wie man an ein Projekt herangeht. Manche schwören auf strikte Planung, andere auf bewährte Algorithmen und wieder andere lassen sich von etwas ganz anderem leiten: ihrem Gefühl. ...

admin

Autor : admin
Category: Software & Web-Development

PHP cURL Tutorial: Using cURL to Make HTTP Requests

cURL is a powerful PHP extension that allows you to communicate with different servers using various protocols, including HTTP, HTTPS, FTP, and more. ...

TheMax

Autor : TheMax
Category: PHP-Tutorials

Midjourney Tutorial - Instructions for beginners

There is an informative video about Midjourney, the tool for creating digital images using artificial intelligence, entitled "Midjourney tutorial in German - instructions for beginners" ...

Mike94

Autor : Mike94
Category: KI Tutorials

Publish a tutorial

Share your knowledge with other developers worldwide

Share your knowledge with other developers worldwide

You are a professional in your field and want to share your knowledge, then sign up now and share it with our PHP community

learn more

Publish a tutorial