Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 通过RESTAPI和laravel一起使用其他表单值上载图像_Php_Laravel - Fatal编程技术网

Php 通过RESTAPI和laravel一起使用其他表单值上载图像

Php 通过RESTAPI和laravel一起使用其他表单值上载图像,php,laravel,Php,Laravel,我正在做一个需要上传图片的项目,在上传的同时我想把一些值发送到API。我目前正在运行一个测试与邮递员,图像上传工作正常,但我发现它很难抓取的价值观一起发送 当您试图访问workDays元素时,您试图访问的是JSON字符串,而不是JSON对象 您可以通过从Request对象获取有效负载,然后对字符串进行json\u解码来解决这个问题 $payload=json\u decode($request->payload,true,512,json\u THROW\u ON\u ERROR); 如果($

我正在做一个需要上传图片的项目,在上传的同时我想把一些值发送到API。我目前正在运行一个测试与邮递员,图像上传工作正常,但我发现它很难抓取的价值观一起发送


当您试图访问
workDays
元素时,您试图访问的是JSON字符串,而不是JSON对象

您可以通过从
Request
对象获取有效负载,然后对字符串进行
json\u解码来解决这个问题

$payload=json\u decode($request->payload,true,512,json\u THROW\u ON\u ERROR);
如果($payload['workDays'])){
foreach($payload['workDays']作为$day){
$data[]=[
“profile_id”=>$profileId,
'name'=>$day['name'],
'vdate'=>$payload['tDateTime'],
];
}
}
    public function newUpload($profileId, Request $request)
    {
    
        try {
    
            if (!$request->hasFile('image')) {
                return response()->json(['upload_file_not_found'], 400);
            }
            $file = $request->file('image');
            if (!$file->isValid()) {
                return response()->json(['invalid_file_upload'], 400);
            }
            $path = public_path() . '/uploads';
            $defaultDateTime = strtotime(date('Y-m-d H:i:s'));
            $rename = "_test" . rand(0, 1000000000) . $profileId . $defaultDateTime . '.' . 
            $file->getClientOriginalExtension();
            $file->move($path, $rename);
    
     
    
                $workDays = $request->payload->get('workDays');
    
                if ($workDays) {
                    foreach ($workDays as $day) {
                         $data[] = [
                            'profile_id' => $profileId,
                            'name' => $day['name'],
                            'vdate' => $request->payload->tDateTime,
                        ];
                    }
    
                    DB::table('workDays')->insert($data);
                }
            
        } catch (Exception $e) {
    
            dd($e->getMessage());
        }
    }