finfo_set_flags
设置libmagic配置选项
PHP 5.3.0 及以上版本
finfo_set_flags() 函数用于设置文件信息资源的标志。通过指定标志,可以控制文件信息函数在提取文件类型时的行为。
bool finfo_set_flags(resource $finfo, int $flags);
<dt>$flags</dt>
<dd>指定标志,可以使用以下常量:</dd>
<ul>
<li>FILEINFO_NONE:不进行任何额外操作。</li>
<li>FILEINFO_MIME:获取 MIME 类型信息。</li>
<li>FILEINFO_MIME_TYPE:只返回 MIME 类型。</li>
<li>FILEINFO_MIME_ENCODING:返回 MIME 编码。</li>
<li>FILEINFO_DEVICES:为设备文件启用识别。</li>
<li>FILEINFO_PRESERVE_ATIME:保留文件的访问时间。</li>
</ul>
成功时返回 true,失败时返回 false。
<?php // 创建文件信息资源 $finfo = finfo_open(FILEINFO_MIME_TYPE); <p>// 设置文件信息标志<br> finfo_set_flags($finfo, FILEINFO_MIME);</p> <p>// 获取文件 MIME 类型<br> echo finfo_file($finfo, 'example.txt');</p> <p>// 关闭文件信息资源<br> finfo_close($finfo);<br> ?><br>
在这个示例中,我们首先使用 finfo_open() 创建了一个文件信息资源。然后通过 finfo_set_flags() 设置了 FILEINFO_MIME 标志,这样就可以在后续调用 finfo_file() 时仅返回 MIME 类型,而不是文件的完整信息。最后,我们使用 finfo_close() 关闭了文件信息资源。