Hey,
Ich bin auf Ideensuche für eine schöne Lösung.
Über eine Soap API bekomme ich folgendes Array zurück.
Ziel ist es, die einzelnen Bestellungen auf ein vernünftiges Objekt zu Mappen und via Getter darauf zugreifen zu können ohne das Mapping manuell für jeden Key über setOption($option); lösen zu müssen.
Wenn ich über meiner Foreach definiere wie das Objekt aussieht hab ich in die IDE entsprechende Autovervollständigung für mein Objekt allerdings kann ich dann nur auf die vorhandene Struktur des Objekts zugreifen - welches logischerweise keine Getter vorweisen kann.
Wünschenswert wäre:
Da hat doch sicher jemand ne schöne Lösung für.
gruß roest
Ich bin auf Ideensuche für eine schöne Lösung.
Über eine Soap API bekomme ich folgendes Array zurück.
PHP-Code:
Array
(
[0] => stdClass Object
(
[payment] => stdClass Object
(
[id] => 3
[name] => Rechnung
[info] => Bitte beachten Sie: Bei Neukunden [...]
[info2] => Bitte überweisen Sie uns nach [...]
)
[shipping] => stdClass Object
(
[id] => 1
[countryId] => 1
[name] => DHL Versand
[tax] => stdClass Object
(
[id] => 1
[mentionId] => 0
[name] => Mehrwertsteuer (DE)
[rate] => 19
)
)
[orderProducts] => stdClass Object
(
[OrderProduct] => stdClass Object
(
[...]
)
)
[id] => 123456
[orderDate] => 2010-05-13T17:00:00
[contact] => stdClass Object
(
[phone] => 1234 / 56789
[email] => email@example.com
)
[billingAddress] => stdClass Object
(
[...]
)
[shippingAddress] => stdClass Object
(
[...]
)
[isTestOrder] =>
[orderStatus] => stdClass Object
(
[id] => 3
[name] => Per DHL versendet
)
)
[1] => stdClass Object
(
[...]
)
[...]
Wenn ich über meiner Foreach definiere wie das Objekt aussieht hab ich in die IDE entsprechende Autovervollständigung für mein Objekt allerdings kann ich dann nur auf die vorhandene Struktur des Objekts zugreifen - welches logischerweise keine Getter vorweisen kann.
PHP-Code:
/** @var $oneOrder OrderResult */
foreach ($orders->getOrders() AS $oneOrder){
echo $oneOrder->id;
}
class OrderResult {
public $id;
public $orderDate;
public $isTestOrder;
public $orderStatus;
}
PHP-Code:
foreach ($orders->getOrders() AS $oneOrder){
echo $oneOrder->getId();
}
gruß roest
Kommentar