TP5框架实现上传多张图片的方法分析
作者:Anwug!
这篇文章主要介绍了TP5框架实现上传多张图片的方法,结合实例形式分析了TP5上传多张图片相关的视图、模型、控制器操作技巧,需要的朋友可以参考下
本文实例讲述了TP5框架实现上传多张图片的方法。分享给大家供大家参考,具体如下:
1、效果图(每点击一次‘添加选项',就会有一个新的 file 框来添加新的图片)
2、view
<!--不要忘了引入jquery文件--> <!-- post传值方式和文件传输协议一定要加上 --> <input type="file" name="image[]"> <input type="button" id="add" name="add" value="+ 添加选项"> <button type="submit" name="submit">添加</button> <script type="text/javascript"> $("#add").click(function(){ $(this).before('<input type="file" name="image[]">'); }); </script>
3、controller
//接收从view来的图片数组 $image=request()->file('image'); //实例化模型,并调用里面的添加图片的方法 $details = new Details(); $info = $details->add($image); if($info === 1) { return '操作成功'; } else { return '操作失败'; }
4、model
//将接收到的 $image foreach遍历添加 foreach($image as $image) { //实例化模型 $details = new Details(); $time=date('Ymd',time()); //将当前的时间戳定义为文件名 $filename=time(); //检测是否存在存放图片的文件夹 if(!file_exists(ROOT_PATH . 'public' . DS .'static'. DS .'img')) { //创建文件 mkdir(ROOT_PATH . 'public' . DS .'static'. DS .'img'); } //上传图片 $info=$image->move(ROOT_PATH . 'public' . DS .'static'. DS .'img'.DS.$time,$filename); //将图片路径存放在数据库中 $details->url = $time.DS.$info->getFileName(); $details->allowField(true)->save(); } return 1;
5、over over over
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。