English 中文(简体)
PHP 中的查找文件类型
原标题:Finding file type in PHP
  • 时间:2012-05-24 06:43:06
  •  标签:
  • php

在 php < strong > 中找到确切的文件类型,而不在点 (.) 之后查找字母吗? 因为在此情况下,即使您将前一文件重新命名为 png, 它也只能被视为恶意的 png 。 某些 PHP 函数, 如 < code> pathinfo () 也返回此点之后的值, 但它并不可靠 。 任何建议或想法都会非常感激 。

最佳回答

您正在寻找的不是“ 扩展”, 而是文件 < em> 类型 < / em> 。 这已经被标准化, 因为 < a href= > http:// en.wikipedia. org/ wiki/ Internet_ media_ type" rel= "nofolterrer" rel= "nofollow noreferrer" > 。 发现一个文件的 MIME 类型有很多方法, 全部 < a href= > https:// stackoverflow.com/ search?q=detect% 20mime% 20type% 20% 5Bphp% 5D > 之前讨论过 < / a > 。 日期的首选方法是 < a href=" "http://www. php. net/ manual/en/ref. fileinfo. p" rel= " rel= " nofol " noreforrererererererer" > > > > fin < fof <

问题回答

上次我检查时, 您可以获取带有 php 函数的图像的准确文件类型。 不确定任意文件 。

100%的精确度可以检测到任何文件的文件类型 。 您可以任意生成文件, 而文件将无法作为检测到的类型打开 。

可以通过检查文件签名( 前几个字节) 来检测二进制文件的文件类型, 从而发现文件的高度准确性。 结果没有如上所述100%的保证。 不过, 您必须有一个文件类型签名库, 以便查看 。

检测文本文件的文件类型是可能的, 但难度很大 。 您能否区分不同的语言? 如果代码能够以超过 1 种语言进行编译呢?

您想要的不是文件扩展名,而是 mime- type 。 文件扩展名只不过是一个命名会议而已, 而且正如您所指出的, 很容易被推翻 。 您可以使用 < a href=" http://www.php. net/ manual/ en/ opident. finfo- file. php" rel = “ nofollow”\\ code> finfo_files 函数来获取此信息 。

它是可靠的。 扩展名就是最后一个点之后的字母。 如果您重命名文件. exe to file. png, 它的新扩展名将是. png, 并且将不再可以执行( 在 Windows 中, 在 POSIX 系统中, 执行可执行性不是通过文件扩展名来控制 ) 。





相关问题
Brute-force/DoS prevention in PHP [closed]

I am trying to write a script to prevent brute-force login attempts in a website I m building. The logic goes something like this: User sends login information. Check if username and password is ...

please can anyone check this while loop and if condition

<?php $con=mysql_connect("localhost","mts","mts"); if(!con) { die( unable to connect . mysql_error()); } mysql_select_db("mts",$con); /* date_default_timezone_set ("Asia/Calcutta"); $date = ...

定值美元

如何确认来自正确来源的数字。

Generating a drop down list of timezones with PHP

Most sites need some way to show the dates on the site in the users preferred timezone. Below are two lists that I found and then one method using the built in PHP DateTime class in PHP 5. I need ...

Text as watermarking in PHP

I want to create text as a watermark for an image. the water mark should have the following properties front: Impact color: white opacity: 31% Font style: regular, bold Bevel and Emboss size: 30 ...

How does php cast boolean variables?

How does php cast boolean variables? I was trying to save a boolean value to an array: $result["Users"]["is_login"] = true; but when I use debug the is_login value is blank. and when I do ...

热门标签