Я хотел взять такие поля, как Тип школы, Имя, Местоположение, Детали, Degreemjor, Сведения об образовании, Дата начала и окончания
Как я могу сделать это, используя цикл foreach?
Вот мой массив.
Array ( [0] => SimpleXMLElement Object ( [@attributes] => Array ( [SchoolType] => UnSpecified ) [School] => SimpleXMLElement Object ( [SchoolName] => School of ) [SchoolLocation] => SimpleXMLElement Object ( ) [Degree] => SimpleXMLElement Object ( [@attributes] => Array ( [DegreeType] => ) [IsHighestDegee] => True [DegreeName] => SimpleXMLElement Object ( ) [DegreeDate] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) [DegreeMajor] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) [EducationDetails] => SimpleXMLElement Object ( ) [DegreeMeasure] => SimpleXMLElement Object ( [EducationMeasure] => SimpleXMLElement Object ( [MeasureSystem] => SimpleXMLElement Object ( ) [MeasureValue] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) ) ) [DateofAttendance] => SimpleXMLElement Object ( [StartDate] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) [EndDate] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) ) [EducationDescription] => Editor - School of Business Management Students\' newsletter ) ) [1] => SimpleXMLElement Object ( [@attributes] => Array ( [SchoolType] => UnSpecified ) [School] => SimpleXMLElement Object ( [SchoolName] => Nanyang Polytechnic ) [SchoolLocation] => Nanyang [Degree] => SimpleXMLElement Object ( [@attributes] => Array ( [DegreeType] => Certificate Courses ) [IsHighestDegee] => False [DegreeName] => SimpleXMLElement Object ( ) [DegreeDate] => SimpleXMLElement Object ( [AnyDate] => 1/1/1999 ) [DegreeMajor] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) [EducationDetails] => Engineering [DegreeMeasure] => SimpleXMLElement Object ( [EducationMeasure] => SimpleXMLElement Object ( [MeasureSystem] => SimpleXMLElement Object ( ) [MeasureValue] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) ) ) [DateofAttendance] => SimpleXMLElement Object ( [StartDate] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) [EndDate] => SimpleXMLElement Object ( [AnyDate] => 1/1/1999 ) ) [EducationDescription] => Secretary - Nanyang Polytechnic Students\' Union Participated in inter-diploma debate ( 1999 ) - preliminary and semi-final ) ) [2] => SimpleXMLElement Object ( [@attributes] => Array ( [SchoolType] => UnSpecified ) [School] => SimpleXMLElement Object ( [SchoolName] => Member of school volleyball team - represented school in National competition ) [SchoolLocation] => SimpleXMLElement Object ( ) [Degree] => SimpleXMLElement Object ( [@attributes] => Array ( [DegreeType] => Certificate Courses ) [IsHighestDegee] => False [DegreeName] => SimpleXMLElement Object ( ) [DegreeDate] => SimpleXMLElement Object ( [AnyDate] => 1/1/1996 ) [DegreeMajor] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) [EducationDetails] => Engineering [DegreeMeasure] => SimpleXMLElement Object ( [EducationMeasure] => SimpleXMLElement Object ( [MeasureSystem] => SimpleXMLElement Object ( ) [MeasureValue] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) ) ) [DateofAttendance] => SimpleXMLElement Object ( [StartDate] => SimpleXMLElement Object ( [0] => SimpleXMLElement Object ( ) ) [EndDate] => SimpleXMLElement Object ( [AnyDate] => 1/1/1996 ) ) [EducationDescription] => Patrol Leader - Girl Guides Member of school volleyball team - represented school in National competition - clinched 2nd prize in 1996 ) ) )
var_export
array ( 0 => SimpleXMLElement::__set_state( array( \'@attributes\' => array ( \'SchoolType\' => \'UnSpecified\', ), \'School\' => SimpleXMLElement::__set_state( array( \'SchoolName\' => \'School of\', ) ), \'SchoolLocation\' => SimpleXMLElement::__set_state( array( ) ), \'Degree\' => SimpleXMLElement::__set_state( array( \'@attributes\' => array ( \'DegreeType\' => \'\', ), \'IsHighestDegee\' => \'True\', \'DegreeName\' => SimpleXMLElement::__set_state( array( ) ), \'DegreeDate\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), ) ), \'DegreeMajor\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), \'EducationDetails\' => SimpleXMLElement::__set_state( array( )), \'DegreeMeasure\' => SimpleXMLElement::__set_state( array( \'EducationMeasure\' => SimpleXMLElement::__set_state( array( \'MeasureSystem\' => SimpleXMLElement::__set_state( array( ) ), \'MeasureValue\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), )), )), \'DateofAttendance\' => SimpleXMLElement::__set_state( array( \'StartDate\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), \'EndDate\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), )), \'EducationDescription\' => \'Editor - School of Business Management Students\\\' newsletter\', )), )), 1 => SimpleXMLElement::__set_state( array( \'@attributes\' => array ( \'SchoolType\' => \'UnSpecified\', ), \'School\' => SimpleXMLElement::__set_state( array( \'SchoolName\' => \'Nanyang Polytechnic\', ) ), \'SchoolLocation\' => \'Nanyang\', \'Degree\' => SimpleXMLElement::__set_state( array( \'@attributes\' => array ( \'DegreeType\' => \'Certificate Courses\', ), \'IsHighestDegee\' => \'False\', \'DegreeName\' => SimpleXMLElement::__set_state( array( ) ), \'DegreeDate\' => SimpleXMLElement::__set_state( array( \'AnyDate\' => \'1/1/1999\', )), \'DegreeMajor\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), \'EducationDetails\' => \'Engineering\', \'DegreeMeasure\' => SimpleXMLElement::__set_state( array( \'EducationMeasure\' => SimpleXMLElement::__set_state( array( \'MeasureSystem\' => SimpleXMLElement::__set_state( array( ) ), \'MeasureValue\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), )), )), \'DateofAttendance\' => SimpleXMLElement::__set_state( array( \'StartDate\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), \'EndDate\' => SimpleXMLElement::__set_state( array( \'AnyDate\' => \'1/1/1999\', )), )), \'EducationDescription\' => \'Secretary - Nanyang Polytechnic Students\\\' Union Participated in inter-diploma debate ( 1999 ) - preliminary and semi-final\', )), )), 2 => SimpleXMLElement::__set_state( array( \'@attributes\' => array ( \'SchoolType\' => \'UnSpecified\', ), \'School\' => SimpleXMLElement::__set_state( array( \'SchoolName\' => \'Member of school volleyball team - represented school in National competition\', ) ), \'SchoolLocation\' => SimpleXMLElement::__set_state( array( )), \'Degree\' => SimpleXMLElement::__set_state( array( \'@attributes\' => array ( \'DegreeType\' => \'Certificate Courses\', ), \'IsHighestDegee\' => \'False\', \'DegreeName\' => SimpleXMLElement::__set_state( array( ) ), \'DegreeDate\' => SimpleXMLElement::__set_state( array( \'AnyDate\' => \'1/1/1996\', )), \'DegreeMajor\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), \'EducationDetails\' => \'Engineering\', \'DegreeMeasure\' => SimpleXMLElement::__set_state( array( \'EducationMeasure\' => SimpleXMLElement::__set_state( array( \'MeasureSystem\' => SimpleXMLElement::__set_state( array( ) ), \'MeasureValue\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), )), )), \'DateofAttendance\' => SimpleXMLElement::__set_state( array( \'StartDate\' => SimpleXMLElement::__set_state( array( 0 => SimpleXMLElement::__set_state( array( ) ), )), \'EndDate\' => SimpleXMLElement::__set_state( array( \'AnyDate\' => \'1/1/1996\', )), )), \'EducationDescription\' => \'Patrol Leader - Girl Guides Member of school volleyball team - represented school in National competition - clinched 2nd prize in 1996\', )), )), )
Это следующий вопрос
Посмотрите на SimpleXMLElement :: attributes
Я думаю, вы можете получить элемент как
$url = 'http://recruitplushrxmlapidemo.onlineresumeparser.com/hrxml/153Melanie%20R.%20Mather%20Mills.xml'; $sxml = simplexml_load_file($url); foreach($sxml->StructuredXMLResume->EducationHistory->SchoolOrInstitution as $key => $value){ echo 'SchoolType --> '.$value->attributes()['SchoolType']; echo "<br />"; echo 'SchoolName --> '.$value->School->SchoolName; echo "<br />"; echo 'SchoolLocation --> '.$value->SchoolLocation; echo "<br />"; echo 'DegreeMajor --> '.$value->Degree->DegreeMajor[0]; echo "<br />"; echo 'EducationDetails --> '.$value->Degree->EducationDetails; echo "<br />"; echo 'StartDate --> '.$value->Degree->DateofAttendance->StartDate[0]; echo "<br />"; echo 'EndDate --> '.$value->Degree->DateofAttendance->EndDate->AnyDate; echo "<br /><br />"; }
Я идиот, он не нажимал на тот, что был XML. Итак, ваш массив, кажется, представляет собой массив школ / учреждений из резюме, правильно? Просто следуйте иерархии XML, чтобы охватить каждый интересующий вас узел.
foreach ($nodes as $node) { echo "Type: " . $node->attributes()['SchoolType'] . "\n"; echo "Name: " . $node->School->SchoolName . "\n"; echo "Location: " . $node->SchoolLocation . "\n"; echo "Degree name: " . $node->Degree->DegreeName . "\n"; // etc }