반응형
Controller 계층에서 내가 직접 다른 사람의 방법을 호출했는데, 그가 돌아온 것은 Json Response 객체였다.그 데이터를 가지고 오려고 했더니 잘못된 관행이 생겼다
//别人的方法
public function testJsonResponse(Request $request) {
$data = [];
$data['messsage'] = "hello";
return response()->json($data);
}
public function getJson(Request $request){
$result = $this->testJsonResponse($request); //여기서 다른 사람의 json 데이터를 얻고 싶다
var_dump($result);
}
postman이 getJson에 접속하면 다음과 같다
object(Illuminate\Http\JsonResponse)#180 (11) {
["data":protected]=>
string(20) "{"messsage":"hello"}"
["content":protected]=>
string(20) "{"messsage":"hello"}"
["version":protected]=>
string(3) "1.0"
["statusCode":protected]=>
int(200)
["statusText":protected]=>
string(2) "OK"
["charset":protected]=>
NULL
["original"]=>
array(1) {
["messsage"]=>
string(5) "hello"
}
["exception"]=>
NULL
}
처음에 : data 안에 있는 데이터를 보면 그냥 들고 싶다.
그리고 쓰는 방법은
$result.data
여기에서 두 개의 착오를 범했는데, 첫 번째는 당연히 문법상의 착오였다.하나는 작용역의 잘못이다.
PHP에서 객체에 접근하는 속성이나 방법은 모두 ->를 사용하므로자바를 사용하는 습관, 호출하는 습관으로 사용.。
또 하나는 protected 작용 영역의 문제이다.성 또는 방법은 자신 또는 하위 범주에서만 사용할 수 있습니다
mixed getData(bool $assoc = false, int $depth = 512)
//$assoc을 true로 되돌리기 배열로 설정합니다. false 기본 반환
$jsonArray = $result -> getData(tr)ue)
//물론 제가 나중에 테스트해본 거라서 바로 받아볼 수도 있죠.
$result->original
반응형
'개발 꿀팁 > PHP' 카테고리의 다른 글
php Time 페이지 실행 시간 모니터링 클래스 (0) | 2022.08.09 |
---|---|
php 사용자 접근 페이지 언어 클래스 가져오기/ 설정 (0) | 2022.08.09 |
PHP로 명령줄에서 그림 보기 (0) | 2022.08.09 |
php 인증 코드를 만드는 데 사용되는 함수 (0) | 2022.08.09 |
PHP의 session을 redis에 넣습니다 (0) | 2022.08.09 |