我想知道,我有這個項目,其中一個人將鏈接複製到表單中。現在這個鏈接必須是一個圖像,大多數用戶所說的永遠不會信任用戶的輸入。preg match on image
我把範圍縮小到的preg_match(),可檢查是否有可我的網站上顯示的鏈路上的圖像。
我的問題基本上是你如何確保檢查的形式時,它是一個圖像,而不是像病毒與末端延伸.jpg格式。
我想知道,我有這個項目,其中一個人將鏈接複製到表單中。現在這個鏈接必須是一個圖像,大多數用戶所說的永遠不會信任用戶的輸入。preg match on image
我把範圍縮小到的preg_match(),可檢查是否有可我的網站上顯示的鏈路上的圖像。
我的問題基本上是你如何確保檢查的形式時,它是一個圖像,而不是像病毒與末端延伸.jpg格式。
$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結尾的文件名....只是在括號中添加要允許(由|分隔符號)擴展
使用finfo_file得到文件的MIME類型。
如果MIME類型是類似image/gif
或image/png
...那麼該文件是一個圖像。
只要你把它放在一個''標籤,它不會被解釋爲可執行文件,所以病毒是不是一個問題。 (儘管存在漏洞)。(但是,如果您確實允許遠程服務器上的圖像,請注意他們可以跟蹤您的用戶等等。) – Ryan 2013-04-08 23:10:20
您是14歲大學嗎?恭喜,順便說一下:D – Ryan 2013-04-08 23:12:45