I have the following XML:
<?xml version="1.0" encoding="UTF-8"?>
<Entries>
<Category name="Gallery Wrap">
<Entry>
<Status>Active</Status>
<ProductId>12x18_12framewrapwalnut</ProductId>
<Size>
<Height>12</Height>
<Width>18</Width>
<Depth>12</Depth>
</Size>
<Options>
<Frame cost="86" id="12x18_12framewrapwalnut">Canvas</Frame>
</Options>
<Description>12x18 Walnut Framed Gallery Wrap</Description>
<Weight>.1</Weight>
</Entry>
....
</Category>
</Entries>
I am trying to get the custom attributes for the element. Here is my PHP code so far:
$products = simplexml_load_file( 'product_list.xml' );
foreach ( $products as $category ) {
$attributes = $category->attributes();
echo '<h2>' . $attributes['name'] . '</h2>';
echo '<table>';
echo '<tr><th></th><th>Name</th><th>Your Cost</th><th>Set Price</th></tr>';
foreach ( $category->Entry as $product ) {
foreach ( $product->Options as $option ) {
$option_attributes = $option->attributes();
$option_vars = get_object_vars( $option );
foreach ( $option_vars as $option_name => $option_value ) {
echo '<tr><td><input type="checkbox" value="' . $option_attributes->id . '" /></td><td>' . $product->Description . ' - ' . $option_name . '</td><td>' . $option_attributes->cost . '</td><td><input type="text" size="5" value="' . $option_attributes->cost . '" data-cost="' . $option_attributes->cost . '" class="price" /></td></tr>';
}
}
}
echo '</table>';
}
I am building a form that takes this XML data let's users which products they want to include, setting their own price (all that aspect I can deal with later, just can't extract that "cost" and "id" attributes).