View/Helper/TableHelper.php
protected function _renderHeaders($options, $tag = 'thead') {
		$th = array();
		foreach ($options['columns'] as $name => $thOptions) {
			$thOptions = Hash::merge(
				$this->__colDefaults,
				array('th' => $options['th']['attrs']),
				$thOptions
			);

			if (false !== $options['paginate'] && false !== $thOptions['sort']) {
				if (is_bool($thOptions['sort'])) {
					$thOptions['sort'] = $name;
				}
				if (is_string($thOptions['sort'])) {
					$thOptions['sort'] = array('key' => $thOptions['sort']);
				}
				$thOptions['sort'] = array_merge(array('options' => array()), $thOptions['sort']);
				$name = $this->Paginator->sort($thOptions['sort']['key'], $name, $thOptions['sort']['options']);
			}

			$th[] = $this->Html->useTag(
				'tableheader',
				$this->_parseAttributes($thOptions['th']),
				$name
			);
		}

		return sprintf(
			"\t<%s>\n\t\t%s\n\t</%s>",
			$tag,
			$this->Html->useTag('tablerow', null, "\n\t\t\t" . implode("\n\t\t\t", $th) . "\n\t\t"),
			$tag
		);
	}
protected function _renderHeaders($options, $tag = 'thead') {
		$th = array();
		foreach ($options['columns'] as $name => $thOptions) {
			$thOptions = Hash::merge(
				$this->__colDefaults,
				array('th' => $options['th']['attrs']),
				$thOptions
			);

			if (false !== $options['paginate'] && false !== $thOptions['sort']) {
				if (is_bool($thOptions['sort'])) {
					$thOptions['sort'] = $name;
				}
				if (is_string($thOptions['sort'])) {
					$thOptions['sort'] = array('key' => $thOptions['sort']);
				}
				$thOptions['sort'] = array_merge(array('options' => array()), $thOptions['sort']);
				$name = $this->Paginator->sort($thOptions['sort']['key'], $name, $thOptions['sort']['options']);
			}

			$th[] = $this->Html->useTag(
				'tableheader',
				$this->_parseAttributes($thOptions['th']),
				$name
			);
		}

		return sprintf(
			"\t<%s>\n\t\t%s\n\t</%s>",
			$tag,
			$this->Html->useTag('tablerow', null, "\n\t\t\t" . implode("\n\t\t\t", $th) . "\n\t\t"),
			$tag
		);
	}
protected function _renderHeaders ( $ options , $ tag = 'thead' ) { $ th = array ( ) ; foreach ( $ options [ 'columns' ] as $ name => $ thOptions ) { $ thOptions = Hash :: merge ( $ this -> __colDefaults , array ( 'th' => $ options [ 'th' ] [ 'attrs' ] ) , $ thOptions ) ; if ( false !== $ options [ 'paginate' ] && false !== $ thOptions [ 'sort' ] ) { if ( is_bool ( $ thOptions [ 'sort' ] ) ) { $ thOptions [ 'sort' ] = $ name ; } if ( is_string ( $ thOptions [ 'sort' ] ) ) { $ thOptions [ 'sort' ] = array ( 'key' => $ thOptions [ 'sort' ] ) ; } $ thOptions [ 'sort' ] = array_merge ( array ( 'options' => array ( ) ) , $ thOptions [ 'sort' ] ) ; $ name = $ this -> Paginator -> sort ( $ thOptions [ 'sort' ] [ 'key' ] , $ name , $ thOptions [ 'sort' ] [ 'options' ] ) ; } $ th [ ] = $ this -> Html -> useTag ( 'tableheader' , $ this -> _parseAttributes ( $ thOptions [ 'th' ] ) , $ name ) ; } return sprintf ( "\t<%s>\n\t\t%s\n\t</%s>" , $ tag , $ this -> Html -> useTag ( 'tablerow' , null , "\n\t\t\t" . implode ( "\n\t\t\t" , $ th ) . "\n\t\t" ) , $ tag ) ; }
Render table's headers row.

@param array $options Table's options.
@param string $tag Optional. Tag to group header's content. Options: 'thead' or 'tfoot'.
@return string Table's header or footer HTML.
Render table s headers row .