Этот вопрос является следствием этого. Теперь для моего последующего вопроса у меня также есть этот объект на странице:
Array ( [registrants] => Array ( [0] => Registrant Object ( [title] => DC [link] => ********** [id] => *************** [updated] => 2013-03-06T12:11:49-05:00 [lastName] => C [firstName] => D [email] => ********* [personalInformation] => PersonalInformation Object ( [cellPhone] => [label] => [addr1] => [addr2] => [addr3] => [city] => [state] => [postalCode] => [province] => [country] => [phone] => ) [businessInformation] => BusinessInformation Object ( [fax] => [website] => [blog] => [company] => [jobTitle] => [department] => [label] => [addr1] => [addr2] => [addr3] => [city] => [state] => [postalCode] => [province] => [country] => [phone] => ) [customInformation1] => Array ( ) [customInformation2] => Array ( ) [registrationStatus] => REGISTERED [registrationDate] => 2013-03-06T12:11:49-05:00 [guestCount] => 0 [paymentStatus] => NA [orderAmount] => [currencyType] => [paymentType] => [costs] => Array ( ) ) [1] => Registrant Object ( [title] => Test Test [link] => **** [id] => ************* [updated] => 2013-03-06T12:47:47-05:00 [lastName] => Test [firstName] => Test [email] => *************** [personalInformation] => PersonalInformation Object ( [cellPhone] => [label] => [addr1] => [addr2] => [addr3] => [city] => [state] => [postalCode] => [province] => [country] => [phone] => ) [businessInformation] => BusinessInformation Object ( [fax] => [website] => [blog] => [company] => [jobTitle] => [department] => [label] => [addr1] => [addr2] => [addr3] => [city] => [state] => [postalCode] => [province] => [country] => [phone] => ) [customInformation1] => Array ( ) [customInformation2] => Array ( ) [registrationStatus] => REGISTERED [registrationDate] => 2013-03-06T12:47:47-05:00 [guestCount] => 0 [paymentStatus] => NA [orderAmount] => [currencyType] => [paymentType] => [costs] => Array ( ) ) ) [nextLink] => )
Итак, следуя той же теории, я возвращаю такие значения:
<?php echo $Registrant->lastName; echo $Registrant->firstName; echo $Registrant->email; ?>
но это возвращает только первое имя и имя из [0] => Объект регистрации не из 1 => Объект регистрации, как получить все первые имена и фамилии? Спасибо всем за интерес и время. С уважением, Крис
Объяснить ваш сценарий немного дальше, чем другие ответы.
Здесь у вас есть массив объектов (Регистрант). Это фактически ассоциативный массив (как и все массивы PHP) с индексами от 0 до 1.
$registrantObjects[0] // would give first Registrant object $registrantObjects[1] // would give second Registrant object
Вы можете получить к ним доступ. Но если вы хотите итерировать массив (т.е. перебирать все элементы и делать то же самое для каждого), вы должны использовать цикл. PHP имеет хороший цикл foreach для этого варианта использования:
foreach ($registrantObjects as $registrant) { // $registrant is a Registrant object here echo $registrant->lastName; }
Вы также можете попробовать следующее:
foreach ($registrantObjects as $index => $registrant) { // $registrant is a also Registrant object here // But we have a variable $index, too. It represents the current 'key' // We have a normal (numbered) array thus the keys are [0..1] echo $registrant->lastName; }
И обе петли равны этому для цикла:
for ($i = 0, $len = count($registrantObjects); $i < $len; $i++) { // $registrantObjects[$i] gives a Registrant object }
Допустим, что вы напечатали объект $ RegistrantObjects,
Вы можете сделать следующее:
foreach ($RegistrantObjects as $registrant) { echo $registrant->lastName; }
Внутри foreach объект $ registrant будет доступен так же, как вы его получите.
Попробуйте приведенный ниже код;
<?php foreach($Registrant as $reg) { echo $reg->firstname; echo $reg->lastname; } ?>