如何利用php进行文件扩展名判断

如何利用php进行文件扩展名判断,第1张

具体实现代码如下:

<型举!DOCTYPE>

<html>

<head>

<meta http-equiv="Content-type" content="text/html" charset="utf-8">

<title>check file</title>

</head>

<body>

<b>文件扩展名验证</b>

<input type="text" name="int" value="文件.php" onblur="check(this)" id="int">

<input type="button" value="检测" onclick="check_value()">

<script>燃租拆function check(obj){

if(obj.value == "" || obj.value.length<3){

alert("输入的长度不能小于3且不能为皮枣空!")

obj.focus()

}

}function check_value(){var str = $("int").value var repx = /\.(php|asp|jsp)$/i var type = str.substring(str.lastIndexOf("."),str.length) if(type.match(repx) &&str.lastIndexOf(".") != -1){

alert("文件扩展名正确")

$("int").focus()

}else{

alert("文件扩展名有误")

$("int").focus()

}

}function $(obj){return document.getElementById(obj)

}</script>

</body></html>

以扒模下是我上传了一个图片后显示的 $_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('不被允许的文件类型')

}

?>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8215246.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存