最近は、フレームワーク全盛で、PEAR::HTML_QuickFormとかあまり使われなくなったかな
原稿を書く都合でマニュアルを見てみると
This package has been superseded, but is still maintained for bugs and security fixes. Use HTML_QuickForm2 instead.
との文字が

ということでHTML_QuickForm2を使ってみます。
基本的には前のバージョンを踏襲しているだろうと思ったのですが
違う部分が結構多いですね

簡単なサンプルということで必須項目のあるものを作ろうとしたのですが
HTML_QuickForm::setRequiredNote()
がなくなっている模様で、文言の変更が出来ませんでした

HTML_QuickForm2では
HTML_QuickForm2_Renderer::setOption()を使います。

書式は
HTML_QuickForm2_Renderer setOption( string|array $nameOrOptions, [mixed $value = null])
Sets the option(s) affecting renderer behaviour
The following options are available:
* ‘group_hiddens’ – whether to group hidden elements together or render them where they were added (boolean)
* ‘group_errors’ – whether to group error messages or render them alongside elements they apply to (boolean)
* ‘errors_prefix’ – leading message for grouped errors (string)
* ‘errors_suffix’ – trailing message for grouped errors (string)
* ‘required_note’ – note displayed if the form contains required elements (string)
こんな感じに指定できます。
$renderer->setOption(array(‘required_note’ => “*必須項目”));

検索であまり情報ひっかからなかったので
簡単なサンプルも載せておきます。

‘選択してください:’,
‘male’ => ‘男’,
‘female’ => ‘女’
);
$form = new HTML_QuickForm2(‘newsletter’);
$name = $form->addText(‘name’)->setLabel(‘お名前:’);
$name->addRule(‘required’, ‘Please provide your name.’);

$email = $form->addText(‘email’)->setLabel(‘E-Mail:’);
$newsletter = $form->addSelect(‘format’, null, array(‘options’ => $format));
$newsletter->setLabel(‘性別:’);
$form->addElement(‘submit’, null, ‘Submit!’);

$renderer = HTML_QuickForm2_Renderer::factory(‘default’);
$renderer->setOption(array(‘required_note’ => “*必須項目”));
echo $form->render($renderer);

if ($form->validate()) {
echo “

SUCCESS!

“;
}

ちなみに、ライセンスがPHPライセンスからBSDライセンスに変わってます。