1

我想知道,我有一个项目,其中一个人将链接复制到表单中。现在这个链接必须是一个图像,大多数用户说的是永远不要相信用户输入。

我将其缩小到 preg_match() 可以检查链接上是否有可以显示在我的网站上的图像。

我的问题基本上是你如何确保在检查表单时,它是一个图像,而不是像扩展名末尾带有 .jpg 的病毒。

4

2 回答 2

0

使用finfo_file获取文件的 mime 类型。

如果 mime 类型类似于image/gifor image/png...,则该文件是图像。

于 2013-04-09T10:45:27.490 回答
0
$url = 'http://foo.bar.com/path.jpg?arg=value#anchor';
if (preg_match("/\.(jpg|png)$/",parse_url($url, PHP_URL_PATH)){
    // YOUR CODE HERE
}

这匹配以 .jpg 或 .png.... 结尾的文件名。只需在括号中添加您想要允许的扩展名(由 | 符号分隔)

于 2013-04-08T23:20:17.193 回答