遍历一组嵌套的 stdClass 对象和数组
Looping through a nested set of stdClass objects and arrays
我正在尝试遍历格式如下所示的 stdClass 对象 ($args)。目标是遍历每个 sObject,JSON 对值进行编码并将其发送到端点。
我认为这可以解决问题:
$object = $args->Notification->sObject;
foreach($object as $item) { JSON_ENCODE AND SEND TO PASTEB.IN }
除了我刚收到 'null' 回复。
如果我这样做:
$object = $args->Notification;
foreach($object as $item) {
$sf = $item->sObject;"
// JSON_ENCODE $sf and send to PASETBI.N
}
...我只得到一个结果发布到 pasteb.in 的结果,而不是所有结果(例如下面 table 中应该是 3 个单独的结果)。
我已经查看了有关循环 arrays/sObjects 的其他问题的答案,但我无法正确回答。任何帮助将不胜感激!
Print_r'ing 这个对象显示这个格式:
stdClass Object
(
[OrganizationId] => XXXXXXXXXXXXXXXX
[ActionId] => XXXXXXXXXXXXXXXX
[SessionId] =>
[EnterpriseUrl] => https://darlston-dev-ed.my.salesforce.com/services/Soap/c/33.0/XXXXXXXXXXXXXXXX
[PartnerUrl] => https://darlston-dev-ed.my.salesforce.com/services/Soap/u/33.0/XXXXXXXXXXXXXXXX
[Notification] => Array
(
[0] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[sObject] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[Contact_Email__c] => test@testemail.com
)
)
[1] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[sObject] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[Contact_Email__c] => test@testemail.com
)
)
[2] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[sObject] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[Contact_Email__c] => test@testemail.com
)
)
)
)
你能试试这个吗?
foreach($args->Notification as $item)
{
echo $item->Id."<br>";
echo $item->sObject->Id."<br>";
echo $item->sObject->Contact_Email__c."<br>";
}
我正在尝试遍历格式如下所示的 stdClass 对象 ($args)。目标是遍历每个 sObject,JSON 对值进行编码并将其发送到端点。
我认为这可以解决问题:
$object = $args->Notification->sObject;
foreach($object as $item) { JSON_ENCODE AND SEND TO PASTEB.IN }
除了我刚收到 'null' 回复。
如果我这样做:
$object = $args->Notification;
foreach($object as $item) {
$sf = $item->sObject;"
// JSON_ENCODE $sf and send to PASETBI.N
}
...我只得到一个结果发布到 pasteb.in 的结果,而不是所有结果(例如下面 table 中应该是 3 个单独的结果)。
我已经查看了有关循环 arrays/sObjects 的其他问题的答案,但我无法正确回答。任何帮助将不胜感激!
Print_r'ing 这个对象显示这个格式:
stdClass Object
(
[OrganizationId] => XXXXXXXXXXXXXXXX
[ActionId] => XXXXXXXXXXXXXXXX
[SessionId] =>
[EnterpriseUrl] => https://darlston-dev-ed.my.salesforce.com/services/Soap/c/33.0/XXXXXXXXXXXXXXXX
[PartnerUrl] => https://darlston-dev-ed.my.salesforce.com/services/Soap/u/33.0/XXXXXXXXXXXXXXXX
[Notification] => Array
(
[0] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[sObject] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[Contact_Email__c] => test@testemail.com
)
)
[1] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[sObject] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[Contact_Email__c] => test@testemail.com
)
)
[2] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[sObject] => stdClass Object
(
[Id] => XXXXXXXXXXXXXXXX
[Contact_Email__c] => test@testemail.com
)
)
)
)
你能试试这个吗?
foreach($args->Notification as $item)
{
echo $item->Id."<br>";
echo $item->sObject->Id."<br>";
echo $item->sObject->Contact_Email__c."<br>";
}