【问题标题】:How to Store data from xml to php variable which is collection of data inside single tag like array如何将数据从 xml 存储到 php 变量,该变量是单个标签内的数据集合,如数组
【发布时间】:2019-02-19 11:02:31
【问题描述】:

我得到如下 XML 格式的数据。

现在如何存储描述、汽车制造等数据的值。哪个在 { } 括号之间。

我想将它们单独存储在 php 中。

<Vehicle xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://regcheck.org.uk">
<vehicleJson>
{ "Description": "JCB INDIA LIMITED / JCB 3DX", "RegistrationYear": "2010", "CarMake": { "CurrentTextValue": "JCB INDIA LIMITED" }, "CarModel": { "CurrentTextValue": "JCB 3DX" }, "MakeDescription": { "CurrentTextValue": "JCB INDIA LIMITED" }, "ModelDescription": { "CurrentTextValue": "JCB 3DX" }, "VechileIdentificationNumber": "1710000", "EngineNumber": "XXXXX", "FuelType": { "CurrentTextValue": "DIESEL" }, "RegistrationDate": "13/08/2010", "Owner": "RAMDEBHAI KARANGIYA", "Fitness": "18-Sep-2019", "Insurance": "05-Nov-2019", "Location": "RTO,PORBANDAR HIGHWAY", "ImageUrl": "http://in.carregistrationapi.com/image.aspx/@SkNCIElORElBIExJTUlURUQgLyBKQ0IgM0RY" }
</vehicleJson>
<vehicleData>
<Description>JCB INDIA LIMITED / JCB 3DX</Description>
<RegistrationYear>2010</RegistrationYear>
<CarMake>
<CurrentTextValue>JCB INDIA LIMITED</CurrentTextValue>
</CarMake>
<CarModel>JCB 3DX</CarModel>
</vehicleData>
</Vehicle>

【问题讨论】:

    标签: javascript php html xml xml-parsing


    【解决方案1】:

    看看这是否有效。创建一个php文件并执行以下代码:

    <?php
    
    $xmlstr = <<<XML
    <Vehicle xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://regcheck.org.uk">
    <vehicleJson>
    { "Description": "JCB INDIA LIMITED / JCB 3DX", "RegistrationYear": "2010", "CarMake": { "CurrentTextValue": "JCB INDIA LIMITED" }, "CarModel": { "CurrentTextValue": "JCB 3DX" }, "MakeDescription": { "CurrentTextValue": "JCB INDIA LIMITED" }, "ModelDescription": { "CurrentTextValue": "JCB 3DX" }, "VechileIdentificationNumber": "1710000", "EngineNumber": "XXXXX", "FuelType": { "CurrentTextValue": "DIESEL" }, "RegistrationDate": "13/08/2010", "Owner": "RAMDEBHAI KARANGIYA", "Fitness": "18-Sep-2019", "Insurance": "05-Nov-2019", "Location": "RTO,PORBANDAR HIGHWAY", "ImageUrl": "http://in.carregistrationapi.com/image.aspx/@SkNCIElORElBIExJTUlURUQgLyBKQ0IgM0RY" }
    </vehicleJson>
    <vehicleData>
    <Description>JCB INDIA LIMITED / JCB 3DX</Description>
    <RegistrationYear>2010</RegistrationYear>
    <CarMake>
    <CurrentTextValue>JCB INDIA LIMITED</CurrentTextValue>
    </CarMake>
    <CarModel>JCB 3DX</CarModel>
    </vehicleData>
    </Vehicle>
    XML;
    
    ?>
    
    <?php 
    $Vehicle = new SimpleXMLElement($xmlstr);
    
    echo "Description:" . $Vehicle->vehicleData->Description . '<br>';
    echo "Registration Year: " . $Vehicle->vehicleData->RegistrationYear;
    ?>
    

    如您所见,它正在做您想做的事。将所有 XML 数据存储在一个 php 变量中,即$xmlstr。然后将该变量存储在另一个与您使用的名称相同的变量中,即Vehicle。然后你使用简单的 php 来获取你想要的数据!让我知道它是否有效!

    P.S - 如果您想将每个数据分别存储在不同的变量中,您可以轻松做到:

    $description = $Vehicle->vehicleData->Description;
    echo "Description:" . $description . '<br>';
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-27
      • 2022-12-19
      • 2020-05-20
      • 2018-02-08
      相关资源
      最近更新 更多