$flexy->getElements() (Previous) (Next) $element->setValue()

View this page in Last updated: Sun, 05 Oct 2008
English | Dutch | French | German | Hungarian | Japanese | Polish | Russian | Spanish | Plain HTML

new HTML_Template_Flexy_Element

new HTML_Template_Flexy_Element -- クラスのコンストラクタ

説明

Flexy は、単一の軽量なクラスですべての HTML タグを表します。 クラスのすべての変数はパブリックとなり、それを使用することができます。 汎用的な代入メソッドや変換メソッドが使用できます。

toHtml() メソッドで、標準の HTML ではなく XHTML を出力させるには、 $element->setAttributes(array('flexy:xhtml'=>true)); を使用するか、 あるいは flexy:xhtml="true" をテンプレート内の要素の属性に指定します。

パラメータ

  • $tag - HTML タグの名前。たとえば img は <img ....。

  • $attributes - 属性の連想配列。toHtml() では key="value" 形式の出力になります。 値のない属性を表す場合は、値として TRUE を使用します。ここには "href='/test.jpg' alt='test'" のような文字列も指定でき、 これはオブジェクトの属性の配列として扱われます。

パブリックプロパティ

string $element->tag

html の要素名。例. img は <img...。

array $element->attributes

要素の属性。

array $element->children

内部に保持するすべての子要素。 toHtml() を実装する任意のオブジェクト、あるいは文字列を指定します。

string $element->override

toHtml() がコールされた際に、タグの値ではなくこの値が出力されます。

string|object $element->prefix

文字列、あるいは toHtml() メソッドを実装するオブジェクトで、 toHtml() の際にタグの HTML の前に返されます。

string|object $element->suffix

文字列、あるいは toHtml() メソッドを実装するオブジェクトで、 toHtml() の際にタグの HTML の後に返されます。

mixed $element->value

要素を作成する際に、すべての定義の後でマージされます。 値をここで代入します。toHtml() の際に toValue() メソッドがコールされ、 select の選択肢やチェックボックスの内容、入力値が適切に設定されます。

例外・エラー

例外はスローされません。

注意

この関数は、スタティックにコールする ことはできません。

例 47-1要素を使用してテンプレートを変更する


<?php
$form = new HTML_Template_Flexy();
$form->compile('some_file_name');

// インスタンスを作成します (詳細は何も設定する必要がないことに注意しましょう)

$elements['test'] = new HTML_Template_Flexy_Element;

// 属性を変更します
$elements['test']->attributes['class'] = 'bold';

// 値を設定します
$elements['test']->setValue('Fred');


// それを何かでラップします
$elements['test']->prefix '******';
$elements['test']->suffix '!!!!!!';



// 異なる型の要素
$elements['test_textarea'] = new HTML_Template_Flexy_Element;
$elements['test_textarea']->setValue('Blogs');


// select のオプション
$elements['test_select'] = new HTML_Template_Flexy_Element;
$elements['test_select']->setOptions( array(
  '123' => 'a select option',
  '1234' => 'another select option'
));
$elements['test_select']->setValue('1234');

// チェックボックス
$elements['test_checkbox'] = new HTML_Template_Flexy_Element;
$elements['test_checkbox']->setValue(1);
$elements['test_checkbox']->setAttributes(array('flexy:xhtml'=>true));

// 配列形式のチェックボックス
$elements['test_checkbox_array[]'] = new HTML_Template_Flexy_Element;
$elements['test_checkbox_array[]']->setValue(array(1,2));

// ラジオボタン
$elements['test_radio'] = new HTML_Template_Flexy_Element;
$elements['test_radio']->setValue('yes');


$form->outputObject(new StdClass$elements);

// 以下の例では新しく追加したデータは既存の属性用になります
?>

$flexy->getElements() (Previous) (Next) $element->setValue()

Download Documentation Last updated: Sun, 05 Oct 2008
Do you think that something on this page is wrong? Please file a bug report or add a note.
User Notes:
There are no user contributed notes for this page.