当前这个项目文件是在wamp的www文件夹创建的,用composer安装了tp8后把之前在pnpEnv文件夹里面www创建的tp项目里的app目录和配置文件复制了过来,今天写到文件上传这里,发现临时文件始终上传在了之前的pnv文件夹里,runtime目录里面没有storage,也没有临时上传的文件
不过使用putFile可以把上传的文件转移到当前项目的public的storage里
大佬可以帮我看下哪个文件需要修改吗?
当前这个项目文件是在wamp的www文件夹创建的,用composer安装了tp8后把之前在pnpEnv文件夹里面www创建的tp项目里的app目录和配置文件复制了过来,今天写到文件上传这里,发现临时文件始终上传在了之前的pnv文件夹里,runtime目录里面没有storage,也没有临时上传的文件
不过使用putFile可以把上传的文件转移到当前项目的public的storage里
大佬可以帮我看下哪个文件需要修改吗?
根据您提供的信息,您正在使用TP8(我猜测您是指ThinkPHP 8)项目,并遇到文件上传路径不正确的问题。
这个问题通常是由于配置文件中的路径设置不正确导致的。在ThinkPHP中,文件上传的路径通常是在配置文件中设置的。以下是一些可能的解决方案:
config/filesystem.php
配置文件中的disk
配置正确。默认情况下,ThinkPHP使用public
磁盘进行文件存储,该磁盘通常配置为将文件存储在public/storage
目录下。请检查该配置是否与您的需求一致。public/storage
目录下,您的代码可能类似于:$file = request()->file('file');
$saveName = \think\facade\Filesystem::disk('public')->putFile('storage', $file);
这里,disk('public')
指定了使用public
磁盘,而putFile('storage', $file)
则将文件上传到public/storage
目录下。
runtime
和storage
目录存在于正确的位置。如果这些目录不存在,您可能需要手动创建它们,或者检查是否有任何代码或命令负责创建这些目录。php think cache:clear
命令来清除缓存。如果您能提供更多的代码和配置文件的细节,我可以更具体地帮助您找到问题所在。不过,基于您提供的信息,以上是一些常见的解决方案,您可以尝试按照这些步骤进行排查。