侯体宗的博客
  • 首页
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

PHP上传图片类显示缩略图功能

php  /  管理员 发布于 7年前   154

有缩略图功能 但是 感觉不全面,而且有点问题,继续学习,将来以后修改下

filename=$filename;$this->fileinfo=$_FILES[$this->filename];$this->filemax=$filemax;$this->filepath=$filepath;$this->fileflag=$fileflag;$this->fileExt=$fileExt;$this->fileMine=$fileMine;//var_dump($this->filename);}//错误判断public function UpError(){if($this->fileinfo['error']>0){switch($this->fileinfo['error']){case 1:$this->fileerror="上传文件大小超过服务器允许上传的最大值,php.ini中设置upload_max_filesize选项限制的值 ";break;case 2:$this->fileerror="上传文件大小超过HTML表单中隐藏域MAX_FILE_SIZE选项指定的值";break;case 3:$this->fileerror="文件部分被上传";break;case 4:$this->fileerror="没有选择上传文件";break;case 5:$this->fileerror="未找到临时目录";break;case 6:$this->fileerror="文件写入失败";break;case 7:$this->fileerror="php文件上传扩展没有打开 ";break;case 8:$this->fileerror="";break;}return false;}return true;}//检测文件类型public function UpMine(){if(!in_array($this->fileinfo['type'],$this->fileMine)) {$this->error="文件上传类型不对";return false;}return true;}//检测文件格式public function UpExt(){$this->ext=pathinfo($this->fileinfo['name'],PATHINFO_EXTENSION);//var_dump($ext);if(!in_array($this->ext,$this->fileExt)){$this->fileerror="文件格式不对";return false;}return true;}//检测文件路径public function UpPath(){if(!file_exists($this->filepath)){mkdir($this->filepath,0777,true);}}//检测文件大小public function UpSize(){$max=$this->fileinfo['size'];if($max>$this->filemax){$this->fileerror="文件过大";return false;}return true;}//检测文件是否HTTPpublic function UpPost(){if(!is_uploaded_file($this->fileinfo['tmp_name'])){$this->fileerror="恶意上偿还";return false;}return true;}//文件名防止重复public function Upname(){return md5(uniqid(microtime(true),true));}//图片缩略图public function Smallimg($x=100,$y=100){$imgAtt=getimagesize($this->path);//图像宽,高,类型$imgWidth=$imgAtt[0];$imgHeight=$imgAtt[1];$imgext=$imgAtt[2];//等比列缩放if(($x/$imgWidth)>($y/$imgHeight)){$bl=$y/$imgHeight;}else{$bl=$x/$imgWidth;}$x=floor($imgWidth*$bl); //缩放后$y=floor($imgHeight*$bl);$images=imagecreatetruecolor($x,$y);$big=imagecreatefromjpeg($this->path);imagecopyresized($images,$big,0,0,0,0,$x,$y,$imgWidth,$imgWidth);switch($imgext){case 1:$imageout=imagecreatefromgif($this->path);break;case 2:$imageout=imagecreatefromjpeg($this->path);break;case 3:$imageout=imagecreatefromgif($this->path);break;}$im=imagejpeg($images,$this->path);}//文件双传public function uploads(){if($this->UpError()&&$this->UpMine()&&$this->UpExt()&&$this->UpSize()&&$this->UpPost()){$this->UpPath();$names=$this->Upname();$this->path=$this->filepath.'/'. $names.'.'.$this->ext;if(move_uploaded_file($this->fileinfo['tmp_name'], $this->path)){return $this->path;}else{$this->fileerror="上传失败";}}else{exit("".$this->fileerror."");}}}uploads();$c=$u->Smallimg();echo "";echo "";?>Examples

以上所述是小编给大家介绍的PHP上传图片类显示缩略图功能的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对站的支持!

您可能感兴趣的文章:

  • php封装的单文件(图片)上传类完整实例
  • PHP之图片上传类实例代码(加了缩略图)
  • php图片上传类 附调用方法
  • PHP实现多图片上传类实例
  • php 图片上传类代码
  • PHP图片上传类带图片显示
  • PHP实现原生态图片上传封装类方法
  • php上传图片类及用法示例
  • php另类上传图片的方法(PHP用Socket上传图片)
  • 超级好用的一个php上传图片类(随机名,缩略图,加水印)
  • php 图片加水印与上传图片加水印php类
  • php版阿里云OSS图片上传类详解


  • 上一条:
    eclipse php wamp配置教程
    下一条:
    php结合mysql与mysqli扩展处理事务的方法
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • 用Time Warden监控PHP中的代码处理时间(0个评论)
    • 在PHP中使用array_pop + yield实现读取超大型目录功能示例(0个评论)
    • Property Hooks RFC在PHP 8.4中越来越接近现实(0个评论)
    • 近期文章
    • 在windows10中升级go版本至1.24后LiteIDE的Ctrl+左击无法跳转问题解决方案(0个评论)
    • 智能合约Solidity学习CryptoZombie第四课:僵尸作战系统(0个评论)
    • 智能合约Solidity学习CryptoZombie第三课:组建僵尸军队(高级Solidity理论)(0个评论)
    • 智能合约Solidity学习CryptoZombie第二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(95个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-11
    • 2017-12
    • 2018-01
    • 2018-02
    • 2018-03
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-09
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-05
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-06
    • 2023-07
    • 2023-08
    • 2023-09
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-02
    • 2024-03
    • 2024-04
    • 2024-05
    • 2024-06
    • 2024-07
    • 2024-09
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客