关于验证上传后缀的问题?

// 获取文件的后缀名,因图片从剪贴板里黏贴时后缀名为空,所以此处确保后缀一直存在
$extension = strtolower($file->getClientOriginalExtension()) ?: 'png';

1.在什么情况下会出现“因图片从剪贴板里黏贴时后缀名为空”呢?怎样可以测试出为空呢? (已解决,感谢 ruke 解答)
2.这里 ?: png 如果改成 jpg 是不是也可以?
3.可以用以下代码代替吗?是否更可靠?

 $extension = $file->guessExtension();
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 2
ruke

我存图片从来不存后缀...都是存没有后缀的文件

5年前 评论

我也觉得$file->guessExtension();更可靠

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!