看起来你会得到不同的相对路径,具体取决于你执行脚本的方式:console或web。
我发现这非常烦人,你有没有这个问题?
每次我需要复制/移动/删除文件时,我都要考虑是否使用cli或web,如果我将其保存为cli或web路径等等。
例如:假设某人上传了图片。您可能会使用这种路径存储图像:uploads/picture-123.jpeg
。然后一个cronjob决定移动图片或其他东西。首先,它必须将其预先添加到源路径:web/
。它还需要一个以web/
开头的目标路径。移动后,它会希望将新路径保存在相应的数据库行或文档中,因此必须从目标路径中删除web/
。
有什么想法吗?
答案 0 :(得分:2)
对于处理文件,路径定义的最佳做法是使用从%kernel.root_dir%
开始的绝对路径:
parameters:
your_upload_path: %kernel.root_dir%/../web/uploads/