2017-10-16 87 views
1

我怎樣才能讀取這個數組$ var ['shipment_number']不起作用?帶有私人變量的PHP數組

EinName\EINUNTERNEHMEN\Response Object 
(
    [shipment_number:EinName\EINUNTERNEHMEN\Response:private] => 222253010000075775 
    [piece_number:EinName\EINUNTERNEHMEN\Response:private] => 
    [label:EinName\EINUNTERNEHMEN\Response:private] => https://cig.Einurl.com 
    [returnLabel:EinName\EINUNTERNEHMEN\Response:private] => 
    [exportDoc:EinName\EINUNTERNEHMEN\Response:private] => 
    [labelType:EinName\EINUNTERNEHMEN\Response:private] => URL 
    [sequenceNumber:EinName\EINUNTERNEHMEN\Response:private] => 1 
    [statusCode:EinName\EINUNTERNEHMEN\Response:private] => 0 
    [statusText:EinName\EINUNTERNEHMEN\Response:private] => ok 
    [statusMessage:EinName\EINUNTERNEHMEN\Response:private] => Der Webservice wurde ohne Fehler ausgeführt. 
    [version:EinName\EINUNTERNEHMEN\Version:private] => 2.2 
    [mayor:EinName\EINUNTERNEHMEN\Version:private] => 2 
    [minor:EinName\EINUNTERNEHMEN\Version:private] => 2 
) 

代碼鏈接: https://pastebin.com/uDm6neRt

+3

這是一個對象,而不是數組。你可以試試'$ var-> getShipmentNumber()'來查看它是否有效。 – aynber

+0

[arrays](http://php.net/manual/en/language.types.array.php)!== [objects](http://php.net/manual/en/language.oop5.php) –

回答

1

你有什麼是object,具體的EinName\EINUNTERNEHMEN\Response一個實例。此外,這些屬性爲private,因此您只能從課程內部直接訪問它們。

見這個例子:

<?php 
class Response { 
    private $var; 

    public function __construct($var) { 
     $this->var = $var; 
    } 

    public function getVar() { 
     return $this->var; 
    } 
} 
$res = new Response("test"); 
echo $res->getVar(); // test 
echo $res->var; // fatal error, attempting to access a private property 

Demo

所以,如果你沒有訪問類,讓你需要使用消氣,如果它存在的屬性。按照慣例檢查您的Response類的文檔,它應該看起來像這樣:

echo $var->getShipmentNumber();