* @version 1.3.1 * @link http://aidanlister.com/repos/v/function.array2table.php * @param array $array The result (numericaly keyed, associative inner) array. * @param bool $recursive Recursively generate tables for multi-dimensional arrays * @param bool $return return or echo the data * @param string $null String to output for blank cells */ function array2table($array, $recursive = false, $return = false, $null = ' ') { // Sanity check if (empty($array) || !is_array($array)) { return false; } if (!isset($array[0]) || !is_array($array[0])) { $array = array($array); } // Start the table $table = "
| ' . $heading . ' | '; } $table .= "
|---|
| '; // Cast objects if (is_object($cell)) { $cell = (array) $cell; } if ($recursive === true && is_array($cell) && !empty($cell)) { // Recursive mode $table .= "\n" . array2table($cell, true, true) . "\n"; } else { $table .= (strlen($cell) > 0) ? htmlspecialchars((string) $cell) : $null; } $table .= ' | '; } $table .= "