XML 数据如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<xmldata>
<Orders>
<OrderID>2119</OrderID>
<AddressValidated>Y</AddressValidated>
<Affiliate_Commissionable_Value>2.0000</Affiliate_Commissionable_Value>
<AuthHash>d995fd9424fb99e80f58841a0ff2340f</AuthHash>
<AVS />
<BillingAddress1>122 27th West</BillingAddress1>
<BillingAddress2>Floor 11</BillingAddress2>
<BillingCity>New York</BillingCity>
<BillingCompanyName />
<BillingCountry>United States</BillingCountry>
<BillingFaxNumber />
<BillingFirstName>Dan</BillingFirstName>
<BillingLastName>Test</BillingLastName>
<BillingPhoneNumber>646456777</BillingPhoneNumber>
<BillingPostalCode>10001</BillingPostalCode>
<BillingState>NY</BillingState>
<CardHoldersName />
<CC_Last4 />
<CreditCardAuthorizationDate>3/30/2012 11:52:00 AM</CreditCardAuthorizationDate>
<CreditCardAuthorizationNumber>MANUAL</CreditCardAuthorizationNumber>
<CreditCardTransactionID />
<Customer_IPAddress>184.56.49.45</Customer_IPAddress>
<CustomerID>19</CustomerID>
<CVV2_Response />
<GiftWrapNote />
<IsAGift>N</IsAGift>
<LastModBy>7</LastModBy>
<LastModified>3/30/2012 1:39:00 PM</LastModified>
<Locked>Y</Locked>
<Order_Comments>Test sale - Don't process
Ignore statuses on this order</Order_Comments>
<Order_Entry_System>PHONE</Order_Entry_System>
<OrderDate>3/30/2012 11:01:00 AM</OrderDate>
<OrderNotes />
<OrderStatus>Ready to Ship</OrderStatus>
<PaymentAmount>8.1600</PaymentAmount>
<PaymentMethodID>17</PaymentMethodID>
<PONum />
<Processed_AutoEvents>Y</Processed_AutoEvents>
<SalesRep_CustomerID>7</SalesRep_CustomerID>
<SalesTax1>0.1700</SalesTax1>
<SalesTax2>0.0000</SalesTax2>
<SalesTax3>0.0000</SalesTax3>
<SalesTaxRate>0</SalesTaxRate>
<SalesTaxRate1>0.08375</SalesTaxRate1>
<SalesTaxRate2>0</SalesTaxRate2>
<SalesTaxRate3>0</SalesTaxRate3>
<ShipAddress1>123 27th West</ShipAddress1>
<ShipAddress2>Floor 1</ShipAddress2>
<ShipCity>New York</ShipCity>
<ShipCompanyName />
<ShipCountry>United States</ShipCountry>
<ShipFaxNumber />
<ShipFirstName>Dan</ShipFirstName>
<ShipLastName>Test</ShipLastName>
<ShipPhoneNumber>646782342</ShipPhoneNumber>
<Shipping_Locked>Y</Shipping_Locked>
<ShippingMethodID>1</ShippingMethodID>
<ShipPostalCode>10001</ShipPostalCode>
<ShipResidential>Y</ShipResidential>
<ShipState>NY</ShipState>
<Stock_Priority>3</Stock_Priority>
<Tax1_IgnoreNoTaxRules />
<Tax1_Title>Tax (8.375%)</Tax1_Title>
<Tax2_IgnoreNoTaxRules />
<Tax2_IncludePrevious>0</Tax2_IncludePrevious>
<Tax2_Title />
<Tax3_IgnoreNoTaxRules />
<Tax3_IncludePrevious>0</Tax3_IncludePrevious>
<Tax3_Title />
<Total_Payment_Authorized>0.0000</Total_Payment_Authorized>
<Total_Payment_Received>7.0700</Total_Payment_Received>
<TotalShippingCost>5.9900</TotalShippingCost>
<VendorID>0</VendorID>
<OrderDetails>
<OrderDetailID>3374</OrderDetailID>
<AutoDropShip>Y</AutoDropShip>
<FreeShippingItem>Y</FreeShippingItem>
<GiftTrakNumber>0</GiftTrakNumber>
<GiftWrap />
<GiftWrapCost>0.0000</GiftWrapCost>
<GiftWrapNote />
<IsKitID />
<KitID />
<Locked>Y</Locked>
<OnOrder_Qty>0</OnOrder_Qty>
<OptionIDs />
<Options />
<OrderID>2119</OrderID>
<ProductCode>test-product</ProductCode>
<ProductID>39200</ProductID>
<ProductName>Test Product 1</ProductName>
<ProductNote />
<ProductPrice>1.0000</ProductPrice>
<ProductWeight>1</ProductWeight>
<QtyOnBackOrder>0</QtyOnBackOrder>
<QtyOnHold>1</QtyOnHold>
<QtyShipped>0</QtyShipped>
<Quantity>1</Quantity>
<TaxableProduct>Y</TaxableProduct>
<TotalPrice>1.0000</TotalPrice>
<Vendor_Price>0.0000</Vendor_Price>
<Warehouses />
</OrderDetails>
<OrderDetails>
<OrderDetailID>3386</OrderDetailID>
<AutoDropShip />
<FreeShippingItem>Y</FreeShippingItem>
<GiftTrakNumber>0</GiftTrakNumber>
<GiftWrap />
<GiftWrapCost>0.0000</GiftWrapCost>
<GiftWrapNote />
<Locked>Y</Locked>
<OnOrder_Qty>0</OnOrder_Qty>
<Options />
<OrderID>2119</OrderID>
<ProductCode>test-product</ProductCode>
<ProductID>39200</ProductID>
<ProductName>Test Product 2</ProductName>
<ProductNote />
<ProductPrice>1.0000</ProductPrice>
<ProductWeight>1</ProductWeight>
<QtyOnBackOrder>0</QtyOnBackOrder>
<QtyOnHold>1</QtyOnHold>
<QtyShipped>0</QtyShipped>
<Quantity>1</Quantity>
<TaxableProduct>Y</TaxableProduct>
<TotalPrice>1.0000</TotalPrice>
</OrderDetails>
</Orders>
<Orders>
<OrderID>2141</OrderID>
<AddressValidated>Y</AddressValidated>
<Affiliate_Commissionable_Value>1.0000</Affiliate_Commissionable_Value>
<AuthHash>14cca8be8db44ca9943f0a6cbf592c83</AuthHash>
<AVS />
<BillingAddress1>122 27th West2</BillingAddress1>
<BillingAddress2 />
<BillingCity>New York2</BillingCity>
<BillingCompanyName />
<BillingCountry>United States</BillingCountry>
<BillingFaxNumber />
<BillingFirstName>Dan2</BillingFirstName>
<BillingLastName>Test2</BillingLastName>
<BillingPhoneNumber>646346322</BillingPhoneNumber>
<BillingPostalCode>10002</BillingPostalCode>
<BillingState>NY</BillingState>
<CardHoldersName />
<CC_Last4 />
<CreditCardAuthorizationDate>3/30/2012 3:33:00 PM</CreditCardAuthorizationDate>
<CreditCardAuthorizationNumber>MANUAL</CreditCardAuthorizationNumber>
<CreditCardTransactionID />
<Customer_IPAddress>56.75.23.34</Customer_IPAddress>
<CustomerID>19</CustomerID>
<CVV2_Response />
<GiftWrapNote />
<IsAGift>N</IsAGift>
<LastModBy>7</LastModBy>
<LastModified>3/30/2012 3:33:00 PM</LastModified>
<Locked>Y</Locked>
<Order_Comments>Test sale #2, don't process, ignore status.</Order_Comments>
<Order_Entry_System>PHONE</Order_Entry_System>
<OrderDate>3/30/2012 3:32:00 PM</OrderDate>
<OrderNotes />
<OrderStatus>Ready to Ship</OrderStatus>
<PaymentAmount>7.0700</PaymentAmount>
<PaymentMethodID>17</PaymentMethodID>
<PONum />
<Processed_AutoEvents>Y</Processed_AutoEvents>
<SalesRep_CustomerID>7</SalesRep_CustomerID>
<SalesTax1>0.0800</SalesTax1>
<SalesTax2>0.0000</SalesTax2>
<SalesTax3>0.0000</SalesTax3>
<SalesTaxRate>0</SalesTaxRate>
<SalesTaxRate1>0.08375</SalesTaxRate1>
<SalesTaxRate2>0</SalesTaxRate2>
<SalesTaxRate3>0</SalesTaxRate3>
<ShipAddress1>123 27th West2</ShipAddress1>
<ShipAddress2 />
<ShipCity>New York2</ShipCity>
<ShipCompanyName />
<ShipCountry>United States</ShipCountry>
<ShipFaxNumber />
<ShipFirstName>Dan2</ShipFirstName>
<ShipLastName>Test2</ShipLastName>
<ShipPhoneNumber>6461234789</ShipPhoneNumber>
<Shipping_Locked>Y</Shipping_Locked>
<ShippingMethodID>1</ShippingMethodID>
<ShipPostalCode>10002</ShipPostalCode>
<ShipResidential>Y</ShipResidential>
<ShipState>NY</ShipState>
<Stock_Priority>3</Stock_Priority>
<Tax1_IgnoreNoTaxRules />
<Tax1_Title>Tax (8.375%)</Tax1_Title>
<Tax2_IgnoreNoTaxRules />
<Tax2_IncludePrevious>0</Tax2_IncludePrevious>
<Tax2_Title />
<Tax3_IgnoreNoTaxRules />
<Tax3_IncludePrevious>0</Tax3_IncludePrevious>
<Tax3_Title />
<Total_Payment_Authorized>0.0000</Total_Payment_Authorized>
<Total_Payment_Received>7.0700</Total_Payment_Received>
<TotalShippingCost>5.9900</TotalShippingCost>
<VendorID>0</VendorID>
<OrderDetails>
<OrderDetailID>3404</OrderDetailID>
<AutoDropShip>Y</AutoDropShip>
<FreeShippingItem>Y</FreeShippingItem>
<GiftTrakNumber>0</GiftTrakNumber>
<GiftWrap />
<GiftWrapCost>0.0000</GiftWrapCost>
<GiftWrapNote />
<IsKitID />
<KitID />
<Locked>Y</Locked>
<OnOrder_Qty>0</OnOrder_Qty>
<OptionIDs />
<Options />
<OrderID>2141</OrderID>
<ProductCode>test-product</ProductCode>
<ProductID>39200</ProductID>
<ProductName>Test Product</ProductName>
<ProductNote />
<ProductPrice>1.0000</ProductPrice>
<ProductWeight>1</ProductWeight>
<QtyOnBackOrder>0</QtyOnBackOrder>
<QtyOnHold>1</QtyOnHold>
<QtyShipped>0</QtyShipped>
<Quantity>1</Quantity>
<TaxableProduct>Y</TaxableProduct>
<TotalPrice>1.0000</TotalPrice>
<Vendor_Price>0.0000</Vendor_Price>
<Warehouses />
</OrderDetails>
</Orders>
</xmldata>
我只需要所有人的孩子<OrderDetails>
在测试中,我尝试简单地回显所有数据,然后在获得这些数据后设置变量。
function processxmldetails() {
$filexml='vl_rts.xml';
if (file_exists($filexml)) {
$xml = simplexml_load_file($filexml);
foreach ($xml->Orders->OrderDetails->children() as $Orders) {
echo $Orders . '<br>';
}
//end foreach
}
}
这只呼应了这一点:
3374
Y
Y
0
0.0000
Y
0
2119
test-product
39200
Test Product 1
1.0000
1
0
1
0
1
Y
1.0000
0.0000
我需要每个都<OrderDetails>
在它自己的变量中,所以我可以检查<OrderDetailID>
它是哪个并相应地插入另一个数据库。
我怎样才能<OrderDetail>
一个一个地调用这些标签,然后检查它们<OrderDetailID>
是什么来执行任务,然后继续下一个<OrderDetail>
?