2013-11-13 5 views
-2

У меня есть объект, который выводит это на print_r:Как извлечь данные из объекта, PHP

Dropbox\Client Object 
(
    [accessToken:Dropbox\Client:private] => secret 
    [clientIdentifier:Dropbox\Client:private] => examples-web-file-browser 
    [userLocale:Dropbox\Client:private] => 
    [apiHost:Dropbox\Client:private] => api.dropbox.com 
    [contentHost:Dropbox\Client:private] => api-content.dropbox.com 
    [root:Dropbox\Client:private] => 
    [host] => Dropbox\Host Object 
     (
      [api:Dropbox\Host:private] => api.dropbox.com 
      [content:Dropbox\Host:private] => api-content.dropbox.com 
      [web:Dropbox\Host:private] => www.dropbox.com 
     ) 

) 

Как я могу получить только значение «секрет»?

Обновление: var_dump ($ dbxClient);

выходы:

object(Dropbox\Client)#3 (7) { 
    ["accessToken":"Dropbox\Client":private]=> 
    string(64) "HrouVh2oRTcAAAAAAAAAARYOdXzK5tA9lCscE24fdnVnt5wYYPSSaK8nITv4PFtc" 
    ["clientIdentifier":"Dropbox\Client":private]=> 
    string(25) "examples-web-file-browser" 
    ["userLocale":"Dropbox\Client":private]=> 
    NULL 
    ["apiHost":"Dropbox\Client":private]=> 
    string(15) "api.dropbox.com" 
    ["contentHost":"Dropbox\Client":private]=> 
    string(23) "api-content.dropbox.com" 
    ["root":"Dropbox\Client":private]=> 
    NULL 
    ["host"]=> 
    object(Dropbox\Host)#2 (3) { 
    ["api":"Dropbox\Host":private]=> 
    string(15) "api.dropbox.com" 
    ["content":"Dropbox\Host":private]=> 
    string(23) "api-content.dropbox.com" 
    ["web":"Dropbox\Host":private]=> 
    string(15) "www.dropbox.com" 
    } 
} 
+2

'$ dropbox-> accessToken'? – Peon

+1

Внутри области класса вы можете использовать '$ this-> accessToken' вне класса, чтобы получить свойство' private' экземпляра класса, должен быть метод getter (например, 'getAccessToken()'). – TiMESPLiNTER

+0

Не могли бы вы разместить'var_dump 'или'var_export' вместо этого? Похоже, что $ this-> accessToken будет работать, но не $ oDropbox-> accessToken, поскольку секрет является приватным –

ответ

4

В файле класса lib/Dropbox/Client.php на линии 18 в official PHP SDK for Dropbox есть метод getAccessToken() который возвращает значение свойства accessToken.

Так что в вашем случае это должно сделать работу:

var_dump($dbxClient->getAccessToken()); 

В будущем, пожалуйста, посмотрите на картотеке SDKs и API, прежде чем вы сможете разместить такие вопросы.

+0

Я думаю, это правильный и единственный способ получить к нему доступ, так как переменная является частной. – Peon

Смежные вопросы