PHP - FileInfo close() 函数



PHP FileInfo 的 finfo_close() 函数用于关闭文件信息资源。此函数可以关闭由 finfo_open() 函数打开的资源,并在成功时返回 true,或在失败时返回 false。

语法

以下是 PHP FileInfo 的 finfo_close() 函数的语法:

bool finfo_close ( resource $finfo )

参数

此函数接受 $finfo 参数,它是您要关闭的文件信息资源,它是在 finfo_open() 函数的帮助下创建的。

返回值

finfo_close() 函数在成功时返回 TRUE,或在失败时返回 FALSE。

PHP 版本

finfo_close() 函数首次出现在核心 PHP 5.3.0 中,在 PHP 7 和 PHP 8 中继续轻松运行。

示例 1

以下是 PHP FileInfo 的 finfo_close() 函数的基本演示,用于关闭 FileInfo 资源。

<?php
   // Open a new FileInfo resource
   $finfo = finfo_open(FILEINFO_MIME_TYPE);
   
   // Check if the resource was created successfully
   if ($finfo) {
       // Perform operations
       
       // Close the FileInfo resource
       finfo_close($finfo);
       echo "The FileInfo resource is closed successfully!"
   } else {
       echo "Failed to create FileInfo resource.";
   }
?>

输出

以下是以下代码的结果:

The FileInfo resource is closed successfully!

示例 2

在以下 PHP 示例中,我们将使用 finfo_close() 函数关闭 FileInfo 资源,并且还将获取 MIME 类型。

<?php
   // Open a new FileInfo resource
   $finfo = finfo_open(FILEINFO_MIME_TYPE);
   
   // Check if the resource was created successfully
   if ($finfo) {
       // Get the MIME type of a file
       $file = '/PHP/PhpProjects/myfile.txt';
       $mime_type = finfo_file($finfo, $file);
       echo "MIME type of $file: $mime_type\n";
   
       // Close the FileInfo resource
       finfo_close($finfo);
   } else {
       echo "Failed to create FileInfo resource.";
   }
?> 

输出

这将生成以下输出:

MIME type of /PHP/PhpProjects/myfile.txt: text/plain

示例 3

现在以下代码同时检索多个文件的 MIME 类型,并使用 finfo_close() 函数关闭资源。

<?php
   // Open a new FileInfo resource
   $finfo = finfo_open(FILEINFO_MIME_TYPE);
   
   // Check if the resource is created successfully
   if ($finfo) {
       // List of files to check
       $files = ['/PHP/PhpProjects/myfile.txt', '/PHP/PhpProjects/image.jpg', '/PHP/PhpProjects/document.pdf'];
   
       // Loop over the files and get their MIME types
       foreach ($files as $file) {
           $mime_type = finfo_file($finfo, $file);
           echo "MIME type of $file: $mime_type\n";
       }
   
       // Close the FileInfo resource
       finfo_close($finfo);
   } else {
       echo "Failed to create FileInfo resource.";
   }
?> 

输出

这将创建以下输出:

MIME type of /PHP/PhpProjects/myfile.txt: text/plain
MIME type of /PHP/PhpProjects/image.jpg: image/gif
MIME type of /PHP/PhpProjects/document.pdf: text/plain

示例 4

在以下示例中,我们使用 finfo_close() 函数关闭 FileInfo 资源,并处理错误。

<?php
   // Open a new FileInfo resource
   $finfo = @finfo_open(FILEINFO_MIME_TYPE);
   
   // Check if the resource was created successfully
   if ($finfo === false) {
       die("Failed to create fileinfo resource.");
   }
   
   // Get the MIME type of a file
   $file = 'example.txt';
   $mime_type = @finfo_file($finfo, $file);
   
   // Check if getting MIME type was successful
   if ($mime_type === false) {
       echo "Failed to get MIME type of $file.\n";
   } else {
       echo "MIME type of $file: $mime_type\n";
   }
   
   // Close the FileInfo resource
   if (!@finfo_close($finfo)) {
       echo "Failed to close FileInfo resource.";
   }
?> 

输出

以下是上述代码的输出:

Failed to get MIME type of PHP/PhpProjects/example.txt.

总结

finfo_close() 函数是 PHP 中的内置方法,用于关闭 FileInfo 资源。我们看到了四个不同的示例,以了解此函数在不同场景中的用法。

php_function_reference.htm
广告