我在控制器上使用以下代码存储上传的文件:
$stored_file = $request->file('image')->store(Config::get('filesystems.uploads.gallery_dir'));
Log::info($stored_file);
$stored_file
变量包含文件保存后的完整路径,Laravel中是否有一个函数只返回生成的名称? (没有路径)
目前$stored_file
返回uploads/gallery/wg7Aa4frj8PQkH89oIseMtlpFtruiJNsHTOoretn.jpeg
我想返回wg7Aa4frj8PQkH89oIseMtlpFtruiJNsHTOoretn.jpeg
答案 0 :(得分:1)
您可以使用str_replace删除不必要的内容:
<?php
echo str_replace("uploads/gallery/", "", $stored_file);
?>
答案 1 :(得分:1)
使用:{alphabets} - {unwanted chars}
答案 2 :(得分:0)
您可以通过以下方式使用hashName()进行操作:
public class uploadinfo {
private String imageName;
private String imageURL;
private String imageURL2;
public uploadinfo(){}
uploadinfo(String name, String url) {
this.imageName = name;
this.imageURL = url;
this.imageURL2 = url;
}
public String getImageName() {
return imageName;
}
public String getImageURL() {
return imageURL;
return imageURL2;
}}
答案 3 :(得分:0)
考虑使用Laravel 7.x,当您使用以下方法从请求中获取上传的文件时:
$file = $request->file('photo');
您将获得一个UploadedFile文件实例,并在其上调用“ store”方法时。它在内部使用md5哈希和一个名为“ hashName”的函数来生成唯一名称。
因此,如果您在UploadedFile实例上调用“ hashName”方法,您将获得与laravel在“ store”方法调用期间创建的相同的唯一名称。
$filename = $request->file('photo')->hashName();