如何在php中解析数组
我必须在php中解析以下数组。我通过HTML文件发送一个XML文件,然后得到以下数组。我必须解析这个数组才能从中获取键值。我发送的xml文件将转换为数组,然后我必须解析数组。我正在使用foreach循环来实现这一点,但无法获得电话号码等内部值 我正在使用如何在php中解析数组,php,Php,我必须在php中解析以下数组。我通过HTML文件发送一个XML文件,然后得到以下数组。我必须解析这个数组才能从中获取键值。我发送的xml文件将转换为数组,然后我必须解析数组。我正在使用foreach循环来实现这一点,但无法获得电话号码等内部值 我正在使用 echo "<pre>";print_r($_FILES);echo "</pre>"; $myXMLData = trim(file_get_contents('php://input')); //echo 'post
echo "<pre>";print_r($_FILES);echo "</pre>";
$myXMLData = trim(file_get_contents('php://input'));
//echo 'post action ==== >>> '.$_POST["action"];
if ($_FILES["fileToUpload"]["error"] == 0)
{
$filename = $_FILES["fileToUpload"]["tmp_name"];
//$handle = fopen($filename, "r");
$xml = simplexml_load_file($filename);
//echo "<pre>";print_r($handle);echo "</pre>";
//$xml=simplexml_load_string($handle) or die("Error: Cannot create object");
echo "<pre>";print_r($xml);echo "</pre>";
echo "abcdef";
//echo $xml['fileToUpload']['name'] . "<br />";
foreach($xml as $key=>$value)
{
echo $key."</br>";
if ($key == 'Contact')
{
echo "abcContactttttt";
}
elseif($key == 'HomeInsuranceQuote')
{
echo "safszdfzhomeinsurance";
}
}
//$xmlDataArray = (array) $xml;
//echo "<pre>";print_r($xml);echo "</pre>";
}
else{
echo "File not uploaded successfully ..... " ;
}
Array output is:-
SimpleXMLElement Object
(
[Contact] => SimpleXMLElement Object
(
[FirstName] => John
[LastName] => Doe
[Address1] => 123 Main
[City] => Denver
[State] => CO
[ZipCode] => 80202
[EmailAddress] => test@bankrateinsurance.com
[PhoneNumbers] => SimpleXMLElement Object
(
[PhoneNumber] => Array
(
[0] => SimpleXMLElement Object
(
[PhoneNumberValue] => 3030000000
[PhoneNumberType] => Home
)
[1] => SimpleXMLElement Object
(
[PhoneNumberValue] => 3030000001
[PhoneNumberType] => Mobile
)
[2] => SimpleXMLElement Object
(
[PhoneNumberValue] => 3030000002
[PhoneNumberType] => Work
)
)
)
[ResidenceStatus] => Unknown
)
[AutoInsuranceQuoteRequest] => SimpleXMLElement Object
(
[Persons] => SimpleXMLElement Object
(
[Person] => Array
(
[0] => SimpleXMLElement Object
(
[FirstName] => John
[LastName] => Doe
[BirthDate] => 1980-01-01
[Occupation] => Architect
[HighestDegree] => Graduate
[CreditHistory] => SimpleXMLElement Object
(
[Bankruptcy] => No
[CreditSelfRating] => Unsure
[Repossessions] => No
)
[Gender] => Male
[MilitaryExperience] => Yes
[UsResident12Months] => Yes
[MaritalStatus] => Married
[RelationshipToApplication] => Self
[PersonId] => 1
[AgeInYears] => 34
[AgeInMonths] => 415
)
[1] => SimpleXMLElement Object
(
[FirstName] => Jane
[LastName] => Doe
[BirthDate] => 1981-01-01
[Gender] => Female
[MaritalStatus] => Married
[RelationshipToApplication] => Spouse
[PersonId] => 2
[AgeInYears] => 33
[AgeInMonths] => 403
)
[2] => SimpleXMLElement Object
(
[FirstName] => James
[LastName] => Doe
[BirthDate] => 1996-01-01
[Occupation] => Student
[HighestDegree] => Other
[Gender] => Male
[RelationshipToApplication] => Child
[PersonId] => 3
[AgeInYears] => 19
[AgeInMonths] => 206
)
)
)
[ReceivedDateTime] => 2014-06-01T00:00:00
[Version] => 1.0
[ApplicationId] => 12345
[RiskType] => Premium
[Vertical] => Auto
)
echo”“;打印(美元文件);回声“;
$myXMLData=trim(文件获取内容php://input'));
//回显“post action===>>>”。$\u post[“action”];
如果($_FILES[“fileToUpload”][“error”]==0)
{
$filename=$_文件[“fileToUpload”][“tmp_名称”];
//$handle=fopen($filename,“r”);
$xml=simplexml\u加载文件($filename);
//echo“”;print_r($handle);echo“”;
//$xml=simplexml\u load\u string($handle)或die(“错误:无法创建对象”);
echo“”;print_r($xml);echo“”;
呼应“abcdef”;
//echo$xml['fileToUpload']['name']。“
”;
foreach($xml作为$key=>$value)
{
回声$key.“”;
如果($key=='Contact')
{
回声“abcContactttttt”;
}
elseif($key==“HomeInsuranceQuote”)
{
回声“safszdfzhomeinsurance”;
}
}
//$xmlDataArray=(数组)$xml;
//echo“”;print_r($xml);echo“”;
}
否则{
回显“文件未成功上载…”;
}
阵列输出为:-
SimpleXMLElement对象
(
[联系人]=>SimpleXMLElement对象
(
[名字]=>约翰
[LastName]=>Doe
[Address1]=>123主
[城市]=>丹佛
[州]=>公司
[ZipCode]=>80202
[电子邮件地址]=>test@bankrateinsurance.com
[PhoneNumber]=>SimpleXMLElement对象
(
[PhoneNumber]=>数组
(
[0]=>SimpleXMLElement对象
(
[PhoneNumberValue]=>3030000000
[电话号码类型]=>主页
)
[1] =>SimpleXMLElement对象
(
[PhoneNumberValue]=>3030000001
[PhoneNumberType]=>手机
)
[2] =>SimpleXMLElement对象
(
[PhoneNumberValue]=>3030000002
[PhoneNumberType]=>工作
)
)
)
[ResidenceStatus]=>未知
)
[AutoInsuranceQuoteRequest]=>SimpleXMLElement对象
(
[Persons]=>SimpleXMLElement对象
(
[人]=>数组
(
[0]=>SimpleXMLElement对象
(
[名字]=>约翰
[LastName]=>Doe
[出生日期]=>1980-01-01
[职业]=>建筑师
[最高学位]=>毕业
[CreditHistory]=>SimpleXMLElement对象
(
[破产]=>否
[信用自评]=>不确定
[收回]=>否
)
[性别]=>男性
[军事经验]=>是的
[UsResident12Months]=>是
[MaritalStatus]=>已婚
[RelationshipToApplication]=>Self
[PersonId]=>1
[年龄]=>34岁
[年龄月数]=>415
)
[1] =>SimpleXMLElement对象
(
[名字]=>简
[LastName]=>Doe
[出生日期]=>1981-01-01
[性别]=>女性
[MaritalStatus]=>已婚
[与申请的关系]=>配偶
[PersonId]=>2
[年龄]=>33岁
[年龄月数]=>403
)
[2] =>SimpleXMLElement对象
(
[名字]=>詹姆斯
[LastName]=>Doe
[出生日期]=>1996-01-01
[职业]=>学生
[最高程度]=>其他
[性别]=>男性
[关系到应用程序]=>子对象
[PersonId]=>3
[年龄]=>19岁
[年龄月数]=>206