PHP Code:
<?php
$arrItems = array(
array('Item'=>'hat','Color'=>'red','COUNT(*)'=>2)
,array('Item'=>'hat','Color'=>'blue','COUNT(*)'=>1)
,array('Item'=>'hat','Color'=>'orange','COUNT(*)'=>1)
,array('Item'=>'belt','Color'=>'red','COUNT(*)'=>1)
,array('Item'=>'belt','Color'=>'blue','COUNT(*)'=>2)
,array('Item'=>'belt','Color'=>'orange','COUNT(*)'=>1)
,array('Item'=>'hat','Color'=>'green','COUNT(*)'=>2)
,array('Item'=>'belt','Color'=>'yellow','COUNT(*)'=>8)
);
$arrPossibleColors = array();
$arrItemsToColors = array();
foreach($arrItems as $arrItem) {
if(!in_array($arrItem['Color'],$arrPossibleColors)) {
$arrPossibleColors[] = $arrItem['Color'];
}
$arrItemsToColors[$arrItem['Item']][$arrItem['Color']] = $arrItem['COUNT(*)'];
}
echo '<table>';
echo '<thead>';
echo '<tr>';
echo '<th>Item</th>';
foreach($arrPossibleColors as $strPossibleColor) {
printf('<th>%s</th>',$strPossibleColor);
}
echo '</tr>';
echo '</thead>';
echo '<tbody>';
if(!empty($arrItemsToColors)) {
foreach($arrItemsToColors as $strItem=>$arrItemToColor) {
echo '<tr>';
printf('<td>%s</td>',$strItem);
foreach($arrPossibleColors as $strPossibleColor) {
printf('<td>%u</td>',isset($arrItemToColor[$strPossibleColor])?$arrItemToColor[$strPossibleColor]:0);
}
echo '</tr>';
}
} else {
printf('<tr><td colspan="1">No Items Available</td></tr>');
}
echo '</tbody>';
echo '</table>';
?>
Bookmarks