-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
上传文件这个改名 #16
Comments
方法1:上传的时候可以不指定名称,上传后重命名并转换,然后删除原先图片; $up = ...... //图片上传过程,上传 1.jpg if($res['file'] 的文件类型不是png){ 上传是上传,转换是转换,请分别参考: |
文件类型:boa::fileinfo类 |
其实我也想过改名后再删除,可这样就是双倍IO消耗,而且对业务逻辑代码体验不够好,本来可以简化的处理缺为了这个点增加了很多精力和时间,用框架不就应该越简便越好吗?本来在这个name方法上简单处理的事情,这个name的用处我也想不到了。 |
后续工作太多了 文件格式呢?boa::file 没有save,没有copy.没有移动,没有删除 还要原生写啊 $file = boa::file(); 为什么不加这种方法,文件操作居然没有增删改 文件上传。我修改了文件上传路径 上传还会自动加上 年/月/日 的文件夹我老天啊。。 |
boa::image()->save() 保存前还要先创建文件夹。方法不能自动创建吗 |
手册 > 附录 > upload类 和 image类 不需要你说的boa::file,我给你的例子就是完整带转换的 如果不想后端这么做,可以方法3:用JS转换图片格式后上传 写代码,越简单,越潇洒 |
boa::file() 只是改名 图片不仅是改名,还需要格式转换 |
方法4:直接改个后缀就可以(适合要求不严格的) 上传时不管什么格式,统一命名xxx.png,浏览器可以显示 |
为更方便使用,image类将在下个小版本优化调整下 |
其实 更应该优化的是 upload 1、指定了设置目录,不应该按年月日再目录下面生成 年月日等文件夹
2、修改文件名的处理
|
看手册 如果手册表述不明确,我下个版本修订
$up = boa::upload() 看手册,每个上传方法第二个参数指定保存路径,等同于设定name,例子同上
|
设置了 因为配置项时还不知道用户上传的文件是什么后缀名 这样一来,后面就有一系列的改名复制工作,要么就需要和前端沟通写死那个页面支持的格式后缀名。而不能上传其他了,没有灵活性了 希望是在上传之前就把文件需要配置的做完然后上传好的文件几乎不用动 我其实也可以强制修改框架,但是后面就不能与新版本同步,或者说是预新版本同步就有一些特别注意的工作。 另外我看到源码里面 upload 方法里面有对后缀名的单独变量,应该在 get_file 返出来! |
自动加后缀按照前面说的改就行了 |
需求是这样的
上传一张原图和同时一张使用前端裁剪插件的小图
要把这两张图片保存到
./file/img/956544.png
./file/img/thumb/956544.png
$up = boa::upload()
$up->cfg('path' , $this->up->cfg('path') . 'img/');
//问题在这里面,,前端上传的有可能是JPG,,这只改ID名字,后缀名不能写死,这个时候还没有得到图片资源呢?
$up->cfg('name' , $this->id . '.png');
$file = $up->one('max');
$up->cfg('path' , $this->up->cfg('path') . 'thumb/');
$file = $up->one('min');
就是说这个改名字,起始就是想之改文件名,不改后缀名啊。。好麻烦啊
The text was updated successfully, but these errors were encountered: