Location: PHPKode > scripts > Array to Table Grid > array-to-table-grid/make_table.php
<?php
class maketable
{
	function make_table($data,$columns=1)
	{
		#################### REQUIRED INPUT ####################
		/*
		1. REQUIRED
		$data should be an array, and array key must be 
		an integer starting with 0 and must contain 
		further iteration in sequence. For example
		
		$data[0] = "any value";
		$data[1] = "any value";
		$data[2] = "any value";
		$data[3] = "any value";
		
		2. REQUIRED
		$columns must be a variable
		$columns must have integer value greater than 0
		*/
		#################### REQUIRED INPUT ####################
	
		$no_of_cells = count($data);
		$no_of_rows = ceil($no_of_cells/$columns);
		$no_of_total_cells = $columns*$no_of_rows;
		$extra_cells = $no_of_total_cells-$no_of_cells;
		
		#################### SUMMARY FOR DEBUGGING ####################
		#	echo "Number of columns: $columns<br>";
		#	echo "Number of rows: $no_of_rows<br>";
		#	echo "Number of data Cells: $no_of_cells<br>";
		#	echo "Number of Extra Cells: $extra_cells<br>";
		#	echo "Number of Total Cells: $no_of_total_cells<br>";
		#################### SUMMARY FOR DEBUGGING ####################
		
		$key = 0;	# THIS VARIABLE WILL BE INCREMENTED ON EARCH CELL
	
		$HTML = "<table class=\"make_table\">";
		for($i=0;$i<$no_of_rows;$i++)	# THIS LOOP WILL GENERATE TABLE ROWS
		{
			$HTML .= "<tr>";	# START TABLE ROW
			
			for($j=0;$j<$columns;$j++)	# THIS LOOP WILL GENERATE TABLE CELLS
			{
				if(isset($data[$key]))	# IF DATA CELL EXISTS
				{
					$HTML .= "<td class=\"make_table_td\">";	# START TABLE CELL
					$HTML .= $data[$key];
					$HTML .= "</td>";	# END TABLE CELL
				}
				else
				{
					$HTML .= "<td class=\"make_table_td\">";	# START TABLE CELL
					$HTML .= "&nbsp;";	# $data[$key];
					$HTML .= "</td>";	# END TABLE CELL			
				}
				$key++;
			}
			
			$HTML .= "</tr>";	# END TABLE ROW
		}
		$HTML .= "</table>";
		
		
		#echo $HTML;
		return $HTML;
	}
}
$data_array[] = "value1";
$data_array[] = "value2";
$data_array[] = "value3";
$data_array[] = "value4";
$data_array[] = "value5";
$data_array[] = "value6";
$data_array[] = "value7";
$data_array[] = "value8";
$data_array[] = "value9";
$data_array[] = "value10";
$data_array[] = "value11";
$data_array[] = "value12";
$data_array[] = "value13";
$data_array[] = "value14";

$make_table_obj = new maketable();
echo $make_table_obj->make_table($data_array, 4);
?>
Return current item: Array to Table Grid