Html クラス

Htmlクラスは、HTMLタグのほぼすべてに対応するHTMLラッパーです。

Doctypes

doctypeはすべてfuel/core/config/doctypes.phpに記述されており、同設定ファイルはあらかじめインクルードされています。

anchor($href, $text, $attributes = array(), $secure = null)

anchorメソッドは、HTMLのanchorタグを返します。

Static Yes
パラメタ
パラメタ 規定値 解説
$href 必須 ターゲットurl
$text 必須 アンカー値
$attributes false anchorタグに適用される属性の配列
$secure null 生成されるURLが、falseだとhttp、trueならhttpsになります。
返り値 正しくフォーマットされたanchorタグの文字列(属性配列が指定されているならその属性も)。
//返り値 <a href="http://www.domain.com/example">Example</a>
echo Html::anchor('example', 'Example');

//返り値 <a href="http://www.otherdomain.com/example">Example</a>
echo Html::anchor('http://www.otherdomain.com/example', 'Example');

//返り値 <a href="http://www.domain.com/example" id="a1" class="sample" style="color:red;">Example</a>
echo Html::anchor('example', 'Example', array('id' => 'a1', 'class' => 'sample', 'style' => 'color:red'));

//返り値 <a href="https://www.domain.com/example" id="a1" class="sample" style="color:red;">Example</a>
echo Html::anchor('example', 'Example', array('id' => 'a1', 'class' => 'sample', 'style' => 'color:red'), true);

mail_to($email, $text, $subject = null, $attr = array())

mail_toメソッドは、そのターゲットとしてmailtoをもつHTMLのanchor tagを返します。

Static Yes
パラメタ
パラメータ 規定値 解説
$email 必須 Email address
$text 必須 アンカー値
$subject null アンカー値
$attr empty anchorタグに適用される属性の配列
返り値 正しくフォーマットされたanchorタグの文字列(属性配列が指定されているならその属性も)。
//返り値 <a href="mailto:name@domain.com">Name</a>
echo Html::mail_to('name@domain.com', 'Name');

//返り値 <a href="mailto:name@domain.com?subject=Something">Name</a>
echo Html::mail_to('name@domain.com', 'Name', 'Something');

//返り値 <a href="mailto:name@domain.com" id="a2" class="sample" style="color:red;">Name</a>
echo Html:::mail_to('name@domain.com', 'Name', null, array('id' => 'a2', 'class' => 'sample', 'style' => 'color:red'));

mail_to_safe($email, $text, $subject = null, $attr = array())

mail_to_safeメソッドは、そのターゲットとしてmailtoをもつHTMLのanchor tagを生成するJavascriptのコードを返します。

Static Yes
パラメタ
パラメータ 規定値 解説
$email 必須 Email address
$text 必須 アンカー値
$subject null アンカー値
$attr empty anchorタグに適用される属性の配列
返り値 正しくフォーマットされたanchorタグの文字列(属性配列が指定されているならその属性も)。
//返り値
//<script type="text/javascript">
//	var user = "name";
//	var at = "@";
//	var server = "domain.com";
//	document.write('<a href="' + 'mail' + 'to:' + user + at + server + '">Name</a>');
//</script>
echo Html::mail_to_safe('name@domain.com', 'Name');

img($src, $attr = array())

imgメソッドはimageタグを返します。

Static Yes
パラメタ
パラメータ 規定値 解説
$src 必須 画像のパス
$attr array() 属性の配列。もしalt属性が指定されていない時は、ファイル名が同属性(の値)のデフォルトになります。
返り値 正しくフォーマットされたimageタグ文字列。
//返り値 <img src="http://example.com/path/to/image.png" alt="image.png" />
echo Html::img('path/to/image.png');

//返り値 <img src="http://example.com/path/to/image.png" alt="Alt Message" class="myclass" />
echo Html::img('path/to/image.png', array("alt" => "Alt Message", 'class' => "myclass"));

meta($name, $content = '', $type = 'name')

metaメソッドはmetaタグを返します。多次元配列が指定された時は複数のmetaタグが返されます。

Static Yes
パラメタ
パラメータ 規定値 解説
$name 必須 一次元配列、あるいは多次元配列のmetaパラメタを含む配列が指定可能。あるいは、name/http-equivの値を記述することも可能です。
$content 必須 $nameパラメタに配列が指定されていない場合、$contentはmeta要素内のcontent属性値と等しくなります。
$type 'name' 値が設定されていない場合はnameがデフォルトとなります。nameあるいはhttp-equivを設定することが可能です。
返り値 正しくフォーマットされたmetaタグ文字列。
//返り値 <meta name="description" content="Meta Example!" />
echo Html::meta('description', 'Meta Example!');

//返り値 <meta name="robots" content="no-cache" />
echo Html::meta('robots', 'no-cache');

$meta = array(
	array('name' => 'robots', 'content' => 'no-cache'),
	array('name' => 'description', 'content' => 'Meta Example'),
	array('name' => 'keywords', 'content' => 'fuel, rocks'),
);

//返り値 <meta name="robots" content="no-cache" />
//返り値 <meta name="description" content="Meta Example!" />
//返り値 <meta name="keywords" content="fuel, rocks" />
echo Html::meta($meta);

doctype($type = 'xhtml1-trans')

doctypeメソッドは、正しくフォーマットされたdoctypeタグを返します。

Static Yes
パラメタ
パラメータ 規定値 解説
$type 'xhtml1-trans' 出力されるべきHTMLのdoctypeタグのタイプ。
指定可能な値: xhtml11, xhtml1-strict, xhtml1-trans, xhtml1-frame, html5, html4-strict, html4-trans, html4-frame
返り値 正しくフォーマットされたdoctypeタグ文字列
//返り値 the XHTML1 Transitional doctype tag.
echo Html::doctype();

//返り値 <!DOCTYPE html>
echo Html::doctype('html5');

audio($src, $attr = false)

audioメソッドの利用にあたっては、html5をdoctypeとして指定することが必要となります。

Static Yes
パラメタ
パラメータ 規定値 解説
$src 必須 ソースファイルのロケーション、あるいは複数のロケーションを含む配列。
$attr false audioタグに適用されるべき属性の配列。
返り値 ソース(src)が指定されている正しくフォーマットされたaudioタグの文字列。
//返り値 <audio><source src="../sounds/beep.mp3" /></audio>
echo Html::audio('../sounds/beep.mp3');

//返り値 <audio><source src="../sounds/beep.mp3" /><source src="../sounds/frog.mp4" /></audio>
echo Html::audio(array('../sounds/beep.mp3','../sounds/frog.mp4'));

ul($list, $style = false)

ulメソッドは正しくフォーマットされた単純な、あるいは入れ子になった順不同リストを返します。

Static Yes
パラメタ
パラメータ 規定値 解説
$list 必須 リストアイテムとして出力されるべき、単純な、あるいは入れ子になった順不同リストアイテムを含む配列。
$style false ulタグに適用される属性の配列。
返り値 正しくフォーマットされたlistタグの文字列。
/* 返り値
<ul id="todo" class="pending">
	<li>red</li>
	<li>blue</li>
	<li>green</li>
	<li>yellow</li>
</ul>
*/
$items = array('red', 'blue', 'green', 'yellow');
$attr = array('id' => 'todo','class' => 'pending');
echo Html::ul($items, $attr);

/* 返り値
<ul class="order">
	<li>colors
		<ul>
			<li>blue</li>
			<li>red</li>
			<li>green</li>
		</ul>
	</li>
	<li>sky</li>
	<li>tools
		<ul>
			<li>screwdriver</li>
			<li>hammer</li>
		</ul>
	</li>
</ul>
*/
$items = array(
	'colors' => array('blue', 'red', 'green'),
	'sky',
	'tools' => array('screwdriver','hammer')
);
$attr = array('class' => 'order');
echo Html::ul($items, $attr);

ol($list, $style = false)

olメソッドは正しくフォーマットされた単純な、あるいは入れ子になった順序リストを返します。

Static Yes
パラメタ
パラメータ 規定値 解説
$list 必須 リストアイテムとして出力されるべき、単純な、あるいは入れ子になった順序リストアイテムを含む配列。
$style false (オプション)olタグに適用される属性の配列。
返り値 正しくフォーマットされたlistタグの文字列。
/* 返り値
<ol id="todo" class="pending">
	<li>red</li>
	<li>blue</li>
	<li>green</li>
	<li>yellow</li>
</ol>
*/
$items = array('red', 'blue', 'green', 'yellow');
$attr = array('id' => 'todo','class' => 'pending');
echo Html::ol($items, $attr);

/* 返り値
<ol class="order">
	<li>colors
		<ol>
			<li>blue</li>
			<li>red</li>
			<li>green</li>
		</ol>
	</li>
	<li>sky</li>
	<li>tools
		<ol>
			<li>screwdriver</li>
			<li>hammer</li>
		</ol>
	</li>
</ol>
*/
$items = array(
	'colors' => array('blue', 'red', 'green'),
	'sky',
	'tools' => array('screw driver','hammer'));
$attr = array('class' => 'order');
echo Html::ol($items, $attr);

処理ヘルパー

html_tag($tag, $attr = array(), $content = false)

html_tag関数は、指定された属性に基づいて HTMLタグを生成します。

パラメタ
パラメータ 規定値 解説
$tag string 必須 得たい要素名(the value to search for)
$attr array
array()
属性の配列
$content string
false
タグで囲まれるコンテント
返り値 string
echo html_tag('a', array(
	'href' => 'http://somedomain.com/',
	'class' => 'my_class'
), 'Link title');

// <a href="http://somedomain.com/" class="my_class">Link title</a>

array_to_attr($attr)

array_to_attr関数は属性文字列を生成します。

パラメタ
パラメータ 規定値 解説
$attr array 必須 属性の配列。
返り値 string
echo array_to_attr(array(
	'href' => 'http://somedomain.com/',
	'class' => 'my_class'
));

// href="http://somedomain.com/" class="my_class"