您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關如何將PHP中的XML字符串轉數組,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
PHP如何將XML字符串轉數組?
首先使用函數“simplexml_load_string()”,將XML字符串轉為對象;
$obj = simplexml_load_string($str,"SimpleXMLElement", LIBXML_NOCDATA);
然后使用“json_encode()”函數將對象轉為JSON字符串;
$json_str = json_encode($obj);
最后使用“json_decode()”轉為數組即。
$xml_arr = json_decode($json_str, true);
完整代碼
$str = '<xml> <ToUserName> <![CDATA[gh_fc0a06a20993]]> </ToUserName> <FromUserName> <![CDATA[oZI8Fj040-be6rlDohc6gkoPOQTQ]]> </FromUserName> <CreateTime>1472549042</CreateTime> <MsgType> <![CDATA[event]]> </MsgType> <Event> <![CDATA[user_consume_card]]> </Event> <CardId> <![CDATA[pZI8Fj8y-E8hpvho2d1ZvpGwQBvA]]> </CardId> <UserCardCode> <![CDATA[452998530302]]> </UserCardCode> <ConsumeSource> <![CDATA[FROM_API]]> </ConsumeSource> <LocationName> <![CDATA[]]> </LocationName> <StaffOpenId> <![CDATA[oZ********nJ3bPJu_Rtjkw4c]]> </StaffOpenId> <VerifyCode> <![CDATA[]]> </VerifyCode> <RemarkAmount> <![CDATA[]]> </RemarkAmount> <OuterStr> <![CDATA[xxxxx]]> </OuterStr> </xml>'; $obj = simplexml_load_string($str,"SimpleXMLElement", LIBXML_NOCDATA); $test = json_decode(json_encode($obj),true); $arr = [ 'FromUserName' => $test['FromUserName'], 'ToUserName' => $test['ToUserName'], 'CreateTime' => $test['CreateTime'], 'CardId' => $test['CardId'], 'UserCardCode' => $test['UserCardCode'], 'ConsumeSource' => $test['ConsumeSource'], 'StaffOpenId' => $test['StaffOpenId'] ]; $arr = array_map('trim',$arr); var_dump($arr);
關于如何將PHP中的XML字符串轉數組就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。