Поддержка PHP Legacy, проблема с stdClass
Недавно мне передали унаследованный PHP-код некоторых наших компаний для работы. Были обновления для версии WSDL, API и PHP (с 5.3 до 5.6), используемые с этим продуктом, так как код работал, и код больше не работает должным образом. В частности,
$response = $mySforceConnection->query($query);
//var_dump($response);
$out='<table><tr><th>Spec Name</th><th>Name</th><th>SF Number</th><th>MW</th></tr>';
foreach ($response->records as $record) {
$out.='<tr><td>'.$record->fields->Spec->fields->Name.'</td>';
$out.='<td>'.$record->fields->Spec->fields->Owner->fields->FirstName.' ';
$out.=$record->fields->Spec->fields->Owner->fields->LastName.'</td>';
$out.='<td>'.$record->fields->Spec->fields->Owner->fields->EmployeeNumber.'</td>';
$out.='</table>';
exit($out);}
Ошибка с;
[13-Apr-2017 09:42:52 US/Eastern] PHP Notice: Undefined property: stdClass::$fields in T:\sample.php on line 44
[13-Apr-2017 09:42:52 US/Eastern] PHP Notice: Trying to get property of non-object in T:\sample.php on line 44
$ Запись возвращается;
object(stdClass)#8 (3) {
["type"]=>
string(19) "SpecLineItem"
["Id"]=>
array(2) {
[0]=>
string(18) "00k6000000QX8E7AAL"
[1]=>
string(18) "00k6000000QX8E7AAL"
}
["any"]=>
array(1) {
["Spec"]=>
object(stdClass)#9 (3) {
["type"]=>
string(11) "Spec"
["Id"]=>
NULL
["any"]=>
array(2) {
[0]=>
string(74) "<sf:Name>Machineworks - National-Renewal-2015-01-01</sf:Name>"
["Owner"]=>
&object(stdClass)#10 (3) {
["type"]=>
string(4) "User"
["Id"]=>
NULL
["any"]=>
string(119) "<sf:EmployeeNumber>12345</sf:EmployeeNumber><sf:FirstName>John</sf:FirstName><sf:LastName>Doe</sf:LastName>"
}
}
}
}
}
Боюсь, что это выходит за рамки моей очень ограниченной области PHP. Как настроить ссылки в конструкции $out, чтобы правильно ссылаться на данные? Извините за то, что, вероятно, так простой вопрос.