首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Php使用来自json数据结构的move_uploaded_file()

Php使用来自json数据结构的move_uploaded_file()
EN

Stack Overflow用户
提问于 2021-06-16 15:14:40
回答 1查看 176关注 0票数 1

我通过json角请求来增强数据,但是我没有($_FILES‘’name‘)格式,所以我不能使用move_uploaded_file()

WEB数据

代码语言:javascript
复制
avatar  {
contentType "application/pdf"
data    "data:application/pdf;base64,JVBERi0xLjcNCiW1tbW1DQoxIDAgb2JqDQo8PC9UeXBlL0NhdGFsb2cvUGFnZXMgMiAwIFIvTGFuZyhlcy1DTykgL1N0cnVjdFRyZWVSb290IDMxIDAgUi9NYXJrSW5mbzw8L01hcmtlZCB0cnVlPj4vTWV0YWRhdGEgMjMyIDAgUi9WaWV3ZXJQcmVmZXJlbmNlcyAyMzMgMCBSPj4NCmVuZG9iag0KMiAwIG9iag0KPDwvVHlwZS9QYWdlcy9Db3VudCA0L0tpZHNbIDMgMCBSIDE3IDAgUiAyMiAwIFIgMjYgMCBSXSA+Pg0KZW5kb2JqDQozIDAgb2JqDQo8PC9UeXBlL1BhZ2UvUGFyZW50IDIgMCBSL1Jlc291cmNlczw8L1hPYmplY3Q8PC9JbWFnZTUgNSAwIFIvSW1hZ2U3IDcgMCBSPj4vRXh0R1N0YXRlPDwvR1M2IDYgMCBSL0dTMTAgMTAgMCB…Dg5NiAwMDAwMCBuDQowMDAwMzU4MDc2IDAwMDAwIG4NCjAwMDAzNTgxMjIgMDAwMDAgbg0KdHJhaWxlcg0KPDwvU2l6ZSAyMzUvUm9vdCAxIDAgUi9JbmZvIDMwIDAgUi9JRFs8MDlEM0VCOEI1NzE4NTg0MEIxMjA3MkEyMUM2RkNEOTg+PDA5RDNFQjhCNTcxODU4NDBCMTIwNzJBMjFDNkZDRDk4Pl0gPj4NCnN0YXJ0eHJlZg0KMzU4ODcyDQolJUVPRg0KeHJlZg0KMCAwDQp0cmFpbGVyDQo8PC9TaXplIDIzNS9Sb290IDEgMCBSL0luZm8gMzAgMCBSL0lEWzwwOUQzRUI4QjU3MTg1ODQwQjEyMDcyQTIxQzZGQ0Q5OD48MDlEM0VCOEI1NzE4NTg0MEIxMjA3MkEyMUM2RkNEOTg+XSAvUHJldiAzNTg4NzIvWFJlZlN0bSAzNTgxMjI+Pg0Kc3RhcnR4cmVmDQozNjM3MzINCiUlRU9G"
filename    "manualversion1.pdf"
size    363915
}
descripPretensiones "gsdfgfgdfdgf"
fecFin  "2021-06-17T05:00:00.000Z"

在这部分,我没有任何的响应尝试捕捉,没有错误o问题,但我的文件从来没有上传到我的文件夹。

代码语言:javascript
复制
    $data = json_decode(file_get_contents('php://input'), true);
    $fileName= $data["avatar"]["filename"];
    
    try {
        if(move_uploaded_file(base64_decode($data['avatar']['data']), $finalRute)){
                echo 'file update';
        }
    } catch (Exception $e) {
        echo 'Excepción capturada: ',  $e->getMessage(), "\n";
    } 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-16 15:27:09

内存中的数据编码为base64。您必须做一些事情来将数据写入磁盘,而不是使用move_uploaded_file,后者旨在将磁盘上的临时文件移动到不同的位置。最直截了当的是目录

类似于:

代码语言:javascript
复制
file_put_contents($finalRute, base64_decode(explode(',', $data['avatar']['data'])[1]));

根据阿布拉卡德弗关于省略data:application/pdf;base64,的评论编辑的代码

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68005503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档