2016-07-13 3 views
0

json은 Google 드라이브 API를 제공하지만 json은 읽을 수 없습니다.배열을 읽는 방법 google 드라이브 api에서 제공 한 결과

나는 modelData : protected 데이터를 읽으려고합니다.

나는 다음있어 결과 $는

[0] => Google_Service_Drive_DriveFile Object (
    [modelData:protected] => Array 
      (
       [labels] => Array 
        (
         [starred] => 
         [hidden] => 
         [trashed] => 
         [restricted] => 
         [viewed] => 
        ) 

       [parents] => Array 
        (
         [0] => Array 
          (
           [kind] => drive#parentReference 
           [id] => 0B4tddddcc03RW42UTdjUlY3SDg 
           [selfLink] => 
           [parentLink] => 
           [isRoot] => 
          ) 

        ) 

     ) 



) 

결과와 나는 부모님 [0]

을 읽으려고하고 그리고 난이 코드

foreach ($result as $res) { 

print_r($res[modelData:protected]); 
} 

에게 쓰기이 나에게 오류를 제공 아래

구문 분석 오류 : 예기치 않은 ':', 예상 오류 ']'가

어떤 아이디어가 있습니까? 이 문제를 해결하는 방법

+0

'print_r ($ res [ "modelData : protected"]); '. 배열 키에 따옴표가 필요합니다. – Arun

+0

@ M4R1KU : 나는 modelData를 가지고 있습니다 : 보호되고 당신에 의해 provieded 솔루션이 작동하지 않습니다 .. 빈 화면 –

+0

그것은 내게 당신이 그 객체에 대한 일반적인 방법으로 얻을 수없는 것 같습니다. – rad11

답변

0

게시 됨 $result 개체는 Google PHP 라이브러리에 속한 Google_Service_Drive_DriveFile 개체 인 것으로 보입니다.

규칙은 입니다. OOP visibility :: protected은 수업 외부에서 보호 된 속성에 액세스 할 수 없다고 말합니다 (검색을 통해 OOP 공개 설정 개념에 대해 자세히 알아보십시오). 당신이 클래스에 releted 모든 기능의 목록을 원하는 경우

당신은 PHP에게 get_class_methods()

print_R(get_class_methods($result)); 
# it will all methods available to this class. 

를 사용하거나의 귀하의 요구 사항에 맞게 원하는 방법에 대한 라이브러리 코드베이스를 통해 검색 할 수 있습니다.

Libray에서 사용하는 코딩 표준에 따라 속성마다 getter 및 setters가 사용됩니다.

# for example if you want to access labels from above code then you can use 
$array = $result->getLabels(); 

# to get Parents 
$parents = $result->getParents(); 

# if you want to set this properties you can use 
$result->setLabels($array); 
+0

API를 사용하여 파일을 읽는 방법을 알려주실 수 있습니까? –

관련 문제