Php 无法检查laravel中的API请求对象中是否存在属性

Php 无法检查laravel中的API请求对象中是否存在属性,php,laravel,api,http,laravel-api,Php,Laravel,Api,Http,Laravel Api,我正在创建一个API控制器函数,仅当我在请求对象中获得test\u id时,该函数才会执行。我能够访问请求数据包,并且能够在其中看到test\u id属性。我试过好几种方法,但我无法检查。这是我的控制器功能。我试过使用try-catch块,它显然输出500个错误 ErrorException:未定义的属性:stdClass::$test\u id,位于文件C:\xampp\htdocs\backendAPI\app\Http\Controllers\API\TestUploadControlle

我正在创建一个API控制器函数,仅当我在请求对象中获得test\u id时,该函数才会执行。我能够访问请求数据包,并且能够在其中看到test\u id属性。我试过好几种方法,但我无法检查。这是我的控制器功能。我试过使用try-catch块,它显然输出500个错误

ErrorException:未定义的属性:stdClass::$test\u id,位于文件C:\xampp\htdocs\backendAPI\app\Http\Controllers\API\TestUploadController.php中

我已经解决了这个问题,并尝试了两种方法(isset()和property_exists()),但都没有帮到我。即使我尝试了echo/die(),它们都没有返回任何结果

public function addReadingTestData(Request $req){
        $module = 1;
        $request = $this->getRequestData($req);
        $isTestIdPResent = false;
         try{
             if($request->test_id){
                 $isTestIdPResent = true;
             }
         }
         catch(Exception $e){  
             $this->sendBAdRequestResponse('no test id');
         }
        if($isTestIdPResent){
            foreach($request->question as $ques){
                echo $ques->description."<br>";
                echo $ques->right_answer."<br><br>";
                echo implode($ques->possible_answers,',');
                echo "\n";
            }
        }else{
            return $this->sendBAdRequestResponse('Test Id does not exist.');
        }
    }

public function getRequestData($request){
        return json_decode($request::createFromGlobals()->getContent());
    }

public function sendBAdRequestResponse($errors){
        return response()->json(['error'=>$errors], 400);
    }

公共函数addReadingTestData(请求$req){
$module=1;
$request=$this->getRequestData($req);
$isTestIdPResent=false;
试一试{
如果($request->test\u id){
$isTestIdPResent=true;
}
}
捕获(例外$e){
$this->sendBAdRequestResponse('no test id');
}
如果($ististidpresent){
foreach($request->question as$ques){
echo$ques->description.“
”; 回音$ques->右键回答。“

”; 回声内爆($ques->可能的答案,“,”); 回音“\n”; } }否则{ 返回$this->sendBAdRequestResponse('测试Id不存在'); } } 公共函数getRequestData($request){ 返回json_decode($request::createFromGlobals()->getContent()); } 公共函数sendBAdRequestResponse($errors){ return response()->json(['error'=>$errors],400); }
使用laravel验证检查
$req

你怎么能做到这一点

在这个答案中找到它


使用laravel验证检查
$req

你怎么能做到这一点

在这个答案中找到它