Html クラス

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

Doctypes

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

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

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

静的 はい
パラメータ
パラメータ デフォルト 説明
$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 タグを返します。

静的 はい
パラメータ
パラメータ デフォルト 説明
$email 必須 メールアドレス
$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 タグを生成する JavaScript のコードを返します。

静的 はい
パラメータ
パラメータ デフォルト 説明
$email 必須 メールアドレス
$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 タグを返します。

静的 はい
パラメータ
パラメータ デフォルト 説明
$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 タグが返されます。

静的 はい
パラメータ
パラメータ デフォルト 説明
$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 タグを返します。

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

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

audio($src, $attr = false)

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

静的 はい
パラメータ
パラメータ デフォルト 説明
$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 メソッドは正しくフォーマットされた単純な、あるいは入れ子になった順不同リストを返します。

静的 はい
パラメータ
パラメータ デフォルト 説明
$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 メソッドは正しくフォーマットされた単純な、あるいは入れ子になった順序リストを返します。

静的 はい
パラメータ
パラメータ デフォルト 説明
$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"