我正在将视频上传到我的开发网站上的本地文件夹,并在数据库中存储post_media_path ..它看起来如下:
media/pages/2/posts/post-video-1456829306.mp4
然后我尝试使用Vimeo上传视频。然而,Vimeo回来时出现错误“无法找到文件”。
所以我正在尝试这个:
$filePath = getcwd() .'/'. $data['post_media_path'];
但是当我这样做时,路径出现如下:
C:\xampp\htdocs\sd-tools\public/media/pages/2/posts/post-video-1456829306.mp4
我怀疑路径是错误的,因为这是错误的方式。
如何解决此问题或让其发挥作用?
由于
答案 0 :(得分:1)
嗯,问题是由于您存储post_media_path
在Windows /home/user/
C:\user\
理想情况下,您需要根据正在运行的操作系统存储值。
快速修复
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')
{
//if running on windows
$filePath = getcwd() .'\'. str_replace("/", "\", $data['post_media_path']);
}
else
{
//if running on something else than windows
$filePath = getcwd() .'/'. $data['post_media_path'];
}
将执行您目前在linux下执行的操作,但在Windows下将/
替换为\
。但是,为了避免出现任何问题,您需要确保文件名本身不包含/
。