導航:首頁 > 編程語言 > php校驗文件類型

php校驗文件類型

發布時間:2023-05-25 02:00:16

php 驗證上傳的文件類型為圖片,並獲得文件的後綴名

以下是我上傳了一個圖片後顯示的 $_FILES['filename']的信息
[filename] => Array
(
[name] => Winter.jpg
[type] => image/jpeg
[tmp_name] => /tmp/php2jw7QX
[error] => 0
[size] => 105542
)
其中type是文件類型的minitype 表示方法,例如普通的HTML的類型是text/html
如果你想用擴展名的方式判斷的話可以用以下代碼:
<?php
#允許的文件擴展名
$allowed_types = array('jpg', 'gif', 'png');
$filename = $_FILES['filename']['name'];
#正則表達式匹配出上傳文件的擴展名
preg_match('|\.(\w+)$|', $filename, $ext);
#print_r($ext);
#轉化成小寫
$ext = strtolower($ext[1]);
#判斷是否在被允許的擴展名里
if(!in_array($ext, $allowed_types)){
die('不被允許的文件類型');
}
?>

⑵ php獲取文件mime類型的幾種方法

MIME類型就是設定某種擴展名的文件用一種應用程序來打開的方式類型,當該擴展名文件被訪問的時候,瀏覽器會自動使用指定應用程序來打開。多用於指定一些客戶端自定義的文件名,以及一些媒體文件打開方式。
php獲取文件mime類型有以下幾種方法:
1、mime_content_type()函數判斷獲取mime類型
mime_content_type返回指定文件的MIME類型,
用法:echomime_content_type('php.gif') .
"
";echomime_content_type('test.php');輸出:image/giftext/plain但是php 5.3.0已經將該函數廢棄。如果仍想使用此函數,那麼可以對php進行配置啟用magic_mime擴展。
2、php Fileinfo 獲取文件MIME類型枝乎(finfo_open)
PHP官方推薦mime_content_type()的替代函數是Fileinfo函數。PHP
5.3.0+已經默認支持Fileinfo函數(fileinfo
support-enabled),不必進行任何配置即可使用finfo_open()判斷獲取文件MIME類型。
用法:$finfo = finfo_open(FILEINFO_MIME);
$mimetype = finfo_file($finfo, $filename);
finfo_close($finfo);
3、image_type_to_mime_type()獲取圖片MIME類型
注意:需要在php.ini中配置打開php_mbstring.dll(Windows需要)和extension=php_exif.dll。
4、php上傳文件獲取MIME類型瞎搭罩
如果使用php上傳磨鬧文件,檢測上傳文件的MIME類型,則可以使用全局變數$_FILES['uploadfile']['type'],由客戶端的瀏覽器檢測獲取文件MIME類型。

⑶ php的圖片上傳程序 判斷文件類型 並獲取上傳以後文件的路徑 我在網上找的程序是可以提取文件的 求達人修改

你找到這一句,改一下:

改動前:$name1=$name.".file";

改動後:$name1=$name;

如果弊燃不行,你再補充問題,希望能對你有幫賀卜腔助

回報就不用了禪衫

⑷ php中關於判斷上傳文件格式

$kuozhan=array('jpg','gif','doc');
$flag = 1; // 判斷上傳文件是否格式正確,正確則為1 , 有一個格式錯誤則0
// 循環,檢測格式是否錯誤

foreach($val['tmp_name'] as $key=>$us){
foreach($val['name'] as $key=>$ns){
$arr=pathinfo($val['name'][$key]);
if(!in_array($arr['extension'],$kuozhan)){
echo " 上傳失敗,格式錯誤!";
$flag = 0; // 格式有錯,flag為0

break;

}
}
}
// 上傳文件
if ($flag == 1) {
循環上傳文件

}

⑸ php命令行工具檢測php文件語法格式是否正確的方法是

使用PHP命令行,如果你是Windows下,需要先設置環境變數

1.右鍵我的電腦->屬性->高級設置

2.點高級->環境變數

⑹ PHP怎麼獲取文件類型

<?php
$file="php.txt";
//打開文件,r表示以只讀方式打開
$handle=fopen($file,"r");
//獲取文件的統計信息
$fstat=fstat($handle);
echo"文件名:".basename($file)."<br>";
//echo"文件大小:".round(filesize("$file")/1024,2)."kb<br>";
echo"文件大小:".round($fstat["size"]/1024,2)."kb<br>";
//echo"最後訪問時間:".date("Y-m-dh:i:s",fileatime($file))."<br>";
echo"最後訪問時間:".date("Y-m-dh:i:s",$fstat["atime"])."<br>";
//echo"最後修改時間:".date("Y-m-dh:i:s",filemtime($file))."<br>";
echo"最後修改時間:".date("Y-m-dh:i:s",$fstat["mtime"]);
?>

⑺ php中怎麼判斷格式的文件類型

/**
*獲取文件類型
*@paramstring$filename文件名稱
*@returnstring文件類型
*/
functiongetFileType($filename){
returnsubstr($filename,strrpos($filename,'.')+1);
}

/**
*獲取文件類型2
*@paramstring$filename文件名稱
*@returnstring文件類型
*/
functiongetFileType2($filename){
returnstrtolower(pathinfo($filename)['extension']);
}

/**
*獲取文件類型3
*@paramstring$filename文件名稱
*@returnstring文件類型
*/
functiongetFileType3($filename){
return$exten[count($exten=explode('.',$filename))-1];
}

/**
*獲取文件類型4
*@paramstring$filename文件名稱
*@returnstring文件類型
*/
functiongetFileType4($filename){
$exten=explode('.',$filename);
returnend($exten);
}

⑻ PHP二進制判斷文件類型

一般我們都是按照文件擴展名來判斷文件類型 但是這個很不靠譜飢喚悄 輕易就通過修改擴展名來躲避了 一般必須要讀取文爛渣件信息來識別

<鏈旁?php

$files = array( /test jpg test png )

$fileTypes = array(

=> exe

=> midi

=> zip

=> rar

=> jpg

=> gif

=> bmp

=> png

foreach($files as $file) {

$fp = fopen($file rb )

$bin = fread($fp ) // 只讀頭兩個位元組

fclose($fp)

$strInfo = @unpack( C chars $bin)

$typeCode = intval($strInfo[ chars ] $strInfo[ chars ])

$fileType = isset($fileTypes[$typeCode]) ? $fileTypes[$typeCode] : unknown ;

echo $file type : <b> $fileType </b> code : <b> $fileType </b><br /> ;

lishixin/Article/program/PHP/201311/20841

⑼ php 如何判斷上傳的文件類型

用雹橘javaSCRIPT判凱肆襲斷文件後綴,給form加上onsubmit="return chk()"
<script language="javascript">
function chk () {
Ary = form1.userfile.value.split('.');
filetype=Ary[Ary.length-1];
if (filetype=='txt')
{
alert ('盯兄Error');
return false;
}
}
</script>

閱讀全文

與php校驗文件類型相關的資料

熱點內容
臟數據java 瀏覽:290
游戲解壓怎麼設置 瀏覽:782
會聲會影如何壓縮視頻 瀏覽:57
閱讀app小說怎麼轉換成txt 瀏覽:65
c語言編程數字變時間 瀏覽:655
迷你編程第五天初級寶箱怎麼弄 瀏覽:839
刺激體驗服如何更新伺服器 瀏覽:934
怎麼把照片做成新的文件夾 瀏覽:466
安卓手機沒有聲音均衡器怎麼辦 瀏覽:506
吃雞國際服為什麼會伺服器匆忙 瀏覽:248
微信中如何打開定位伺服器 瀏覽:203
java並發編程書籍 瀏覽:280
android601源碼 瀏覽:788
程序員離職了還能幹嘛 瀏覽:156
少林功法pdf 瀏覽:471
安卓80版本小游戲怎麼玩 瀏覽:632
奇書pdf 瀏覽:836
伺服器的管理口有什麼用 瀏覽:643
澳洲加密資產新政策 瀏覽:157
哈利波特連接伺服器失敗什麼意思 瀏覽:234