用php编写文件扩展名,利用php获取一个文件的扩展名代码

要求:dir/upload.image.jpg,找出 .jpg 或者 jpg ,

必须使用PHP自带的处理函数进行处理,方法不能明显重复.

$string= ‘dir/upload.image.jpg’;

$tok = strtok($string, ‘.’); //使用strtok将字符串分割成一个个令牌

while ($tok)

{

$arr[]= $tok;

$tok = strtok(‘.’); //该函数会保持它自己的内部指针在字符串中的位置,

//如果想重置指针,可以将该字符串传给这个函数.

//所以当第二次调用strtok()函数时,如果对上一次的已分割的字符串进行分割,第1个参数可以省略

}

$count= count($arr);

$i= $count-1;

$file_type= $arr[$i];

?>

$string= ‘dir/upload.image.jpg’;

$arr= explode(‘.’, $string); //使用explode()函数分割字符串,返回值是一个数组

$count= count($arr);

$count-=1;

$file_type= $arr[$count];

//利用数字索引

$file_type = array_pop($arr);//将数组最后一个单元弹出(出栈),用一个变量接住

?>

$string= ‘dir/upload.image.jpg’;

$i= strrpos($string, ‘.’); //得到指定分割符在字符串的最后一次出现的位置

$file_type= substr($string, $i);//截取字符串

?>

$string= ‘dir/upload.image.jpg’;

$file_type= strrchr($string, ‘.’); //取得某字符最后出现处起的字符串。

?>

$string= ‘dir/upload.image.jpg’;

$arr= pathinfo($string); //返回文件路径的信息 print_r($arr);

$file_type= $arr['extension'];

?>

$string= ‘dir/upload.image.jpg’;

eregi(‘^["."]+$’, $string, $arr);//用正则表达式来分割

$count= count($arr);

$count-=1;

$file_type= $arr[$count];

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,你可以参考以下 PHP 代码实现图片文件上传,其使用了 `$_FILES` 和 `pathinfo()` 函数来获取上传文件的信息,使用了 `in_array()` 函数来判断上传文件扩展名是否合法,最后使用了 `move_uploaded_file()` 函数将上传的文件保存到指定目录。 ```php <?php if(isset($_POST['submit'])){ $allowed_extensions = array("jpeg", "png", "gif"); $file_extension = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION); $file_size = $_FILES['file']['size']; $file_tmp = $_FILES['file']['tmp_name']; if(in_array($file_extension, $allowed_extensions) === false){ $errors[] = "扩展名不合法,请上传 JPEG、PNG 或 GIF 格式的图片!"; } if($file_size > 2097152){ $errors[] = "文件大小不能超过 2MB!"; } if(empty($errors) == true){ move_uploaded_file($file_tmp, "uploads/" . $_FILES['file']['name']); echo "文件上传成功!"; }else{ print_r($errors); } } ?> <html> <head> <title>图片上传</title> </head> <body> <form method="POST" enctype="multipart/form-data"> <input type="file" name="file" /> <input type="submit" name="submit" value="上传" /> </form> </body> </html> ``` 在这段代码,`$allowed_extensions` 数组存储了允许上传的图片扩展名,`$file_extension` 变量使用 `pathinfo()` 函数获取上传文件扩展名,`$file_size` 变量获取上传文件的大小,`$file_tmp` 变量获取上传文件的临时存储路径。 然后使用 `in_array()` 函数判断 `$file_extension` 是否在 `$allowed_extensions` 数组,如果不在,则说明上传的文件不是被允许的图片格式,抛出一个错误信息。 接下来判断上传文件的大小是否超过 2MB,如果超过则同样抛出一个错误信息。 最后使用 `move_uploaded_file()` 函数将上传的文件从临时目录移动到指定的目录,同时出上传成功的信息。如果出现了错误,使用 `print_r()` 函数出错误信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值