4Manuals

  • PDF Cloud HOME

修复json_encode后,无法将类型为stdClass的对象用作数组=>仍然出现错误 Download

    碳日期差异方法在Laravel 5.7中给出了错误的日期差异 如何使用PHP将https错误状态设置为404,以便可以通过.htaccess文件处理? 通过dropzone laravel通过电子邮件发送多个图像 通过键合并两个数组,并将值附加到另一个数组中 电子邮件字段为空 如何在TCPDF中添加Jameel Noori Nastaleeq字体? 如何取消发布PHP Artisan Laravel模块 使用tomcat调用JavaBridge时获取404 如何在PHP中控制缓存 为什么我在php中的mysqli查询不起作用

我需要重新组织JSON,并且我正在使用StdClass()却收到此错误:Fatal error: Uncaught Error: Cannot use object of type stdClass as array

在发布到这里之前,我已经查看过其他问题,但是我发现需要true选项,我已经对其进行了修改,但没有成功。

这是我的功能:

function getFilesJson($fileArray){
    $arrayOfStudentFiles = [];
    foreach ($fileArray as $key => $file){
        $outObj = new StdClass;
        $tmpFileObject = new StdClass;
        $outObj->files = [];

        $tmpFileObject->name = $fileArray[$key]['sequence']->name;
        $tmpFileObject->compiled = true;
        $tmpFileObject->lineNumbers = $fileArray[$key]['sequence']->lineNumbers;
        $tmpFileObject->sequence = $fileArray[$key]['sequence']->sequence;
        $tmpFileObject->defTerms = $fileArray[$key]['sequence']->defTerms;
        $outObj->files[0] = $tmpFileObject;

        $outObj->filesMotifs = [];
        $outObj->fileName = "{$fileArray[$key]->name}.zip";
        $outObj->unknowns = $fileArray[$key]['sequence']->unknowns;
        $outObj->motifs = [];
        $outObj->clusters = [];
        $outObj->objects = [];

        if (isset($fileArray[$key]->objects))
            $outObj->objects = $fileArray[$key]->objects;

        $arrayOfStudentFiles[] = json_encode($outObj, true);
    }
    return $arrayOfStudentFiles;
}
  

编辑:$fileArray是stdClass的数组

1 个答案:

答案 0 :(得分:0)

将最终输出更改为Array而不是对象之类的

function getFilesJson($fileArray){
    $arrayOfStudentFiles = [];
    foreach ($fileArray as $key => $file){
        $outObj = [];
        $tmpFileObject = [];
        $outObj['files'] = [];

        $tmpFileObject['name'] = $file['sequence']['name'];
        $tmpFileObject['compiled'] = true;
        $tmpFileObject['lineNumbers'] = $file['sequence']['lineNumbers'];
        $tmpFileObject['sequence'] = $file['sequence']['sequence'];
        $tmpFileObject['defTerms'] = $file['sequence']['defTerms'];
        $outObj[files[0]] = $tmpFileObject;

        $outObj['filesMotifs'] = [];
        $outObj['fileName'] = "{$file['name']}.zip";
        $outObj['unknowns'] = $file['sequence']['unknowns'];
        $outObj['motifs'] = [];
        $outObj['clusters'] = [];
        $outObj['objects'] = [];

        if (isset($file['objects']))
            $outObj['objects'] = $file['objects'];

        $arrayOfStudentFiles[] = json_encode($outObj, true);
    }
    return $arrayOfStudentFiles;
}



Similar searches
    WordPress-利用浏览器缓存第三者URL 如何在vb.net中的数组类中使用“ withevents”? Samsung SR-38NMB Refrigerator User Manual 如何从pyspark中的数据框创建顶点和边? 我该如何解决这个查询