Google应用引擎直接文件上传会将字符添加到文件末尾

时间:2015-05-08 11:43:49

标签: php google-app-engine

我正在谷歌应用引擎php应用程序中实现文件上传。当我使用以下代码上传word文件时:

$bucket = "default";
// Process all files.
$filenames = [];
foreach ($_FILES as $file) {

    $fileName = md5(uniqid());

    $fileName = "gs://".$bucket."/".$fileName;
    stream_context_set_default(['gs' => [
        'Content-Type' => $file['type'],
        'acl' => 'public-read',
        'metadata' => [
            'filename' => $file['name']
        ]
    ]]);
    move_uploaded_file($_FILES['uploaded_files']['tmp_name'], $fileName);

    $filenames[] = $fileName;
}

$file = $filenames[0];
$fileUrl = CloudStorageTools::getPublicUrl($file, true);

当我使用$ fileUrl word下载文件时,说该文件已损坏。当我运行hexdump和vimdiff时,我会在文件的最后部分得到差异。来自Google应用引擎的文件具有以下额外字节:

0d 0a

在文件的末尾。除了加载文件内容并修剪它之外,还有什么可以摆脱这个吗? 谢谢。

0 个答案:

没有答案