CakePHP は、HTML フォームを簡単かつ安全に処理するためのさまざまな組み込みタグを提供します。他の多くの PHP フレームワークと同様に、HTML の主要な要素も CakePHP を使用して生成されます。以下は、HTML 要素の生成に使用されるさまざまな関数です。
次の関数は、選択オプションを生成するために使用されます −
Syntax | _selectOptions( array $elementsarray(), array $parentsarray(), boolean $showParentsnull, array $attributesarray() ) |
---|---|
Parameters |
|
Returns | array |
Description | Returns an array of formatted OPTION/OPTGROUP elements |
OPTGROUP の親
Syntax | select( string $fieldName, array $options array(), array $attributes array() ) |
---|---|
Parameters |
Name attribute of the SELECT Array of the OPTION elements (as 'value'=>'Text' pairs) to be used in the SELECT element. |
Returns | Formatted SELECT element. |
Description | Returns a formatted SELECT element. |
次の関数は HTML 選択要素を生成するために使用されます。
Syntax | Button(string $title, array $optionsarray() ) |
---|---|
Parameters |
|
Returns | HTML button tag. |
Description | Creates a tag. The type attribute defaults to type="submit". You can change it to a different value by using $options['type']. |
SELECT 要素で使用される OPTION 要素の配列 ('value'=>'Text' ペアとして)。
Syntax | Checkbox(string $fieldName, array $optionsarray() ) |
---|---|
Parameters |
|
Returns | An HTML text input element. |
Description | Creates a checkbox input widget. |
Syntax | create( mixed $modelnull , array $optionsarray() ) |
---|---|
Parameters |
|
Returns | A formatted opening FORM tag. |
Description | Returns an HTML FORM element. |
タグを作成します。 type 属性のデフォルトは
type="submit"Syntax | file(string $fieldName, array $optionsarray() ) |
---|---|
Parameters |
|
Returns | A generated file input. |
Description | Creates file input widget. |
次の関数は、HTML ページに 隠し要素 を作成するために使用されます。
Syntax | hidden( string $fieldName , array $optionsarray() ) |
---|---|
Parameters |
|
Returns | A generated hidden input |
Description | Creates a hidden input field |
「Modelname.fieldname」の形式のフィールド名
Syntax | Input(string $fieldName , array $options array() ) |
---|---|
Parameters |
|
Returns | Completed form widget |
Description | Generates a form input element complete with label and wrapper div |
Syntax | Radio(string $fieldName , array $optionsarray() , array $attributesarray() ) |
---|---|
Parameters |
|
Returns | Completed radio widget set |
Description | Creates a set of radio widgets. Will create a legend and fieldset by default. Use $options to control this. |
Input(string $fieldName , array $options array() )
Syntax | Submit(string $caption null, array $options array() ) |
---|---|
Parameters |
|
Returns | An HTML submit button |
Description | Creates a submit button element. This method will generate elements that can be used to submit, and reset forms by using $options. Image submits can be created by supplying an image path for $caption. |
Syntax | Textarea(string $fieldName , array $options array() ) |
---|---|
Parameters |
|
Returns | A generated HTML text input element |
Description | Creates a textarea widget |
Radio(string $fieldName , array $optionsarray() , array $attributesarray() )た、>
ラジオ ボタン オプションの配列。
<?php use Cake\Http\Middleware\CsrfProtectionMiddleware; use Cake\Routing\Route\DashedRoute; use Cake\Routing\RouteBuilder; $routes->setRouteClass(DashedRoute::class); $routes->scope('/', function (RouteBuilder $builder) { $builder->registerMiddleware('csrf', new CsrfProtectionMiddleware([ 'httpOnly' => true, ])); $builder->applyMiddleware('csrf'); //$builder->connect('/pages',['controller'=>'Pages','action'=>'display', 'home']); $builder->connect('register',['controller'=>'Registrations','action'=>'index']); $builder->fallbacks(); });
次の関数は、HTML ページに 送信 ボタンを生成するために使用されます。
<?php namespace App\Controller; use App\Controller\AppController; class RegistrationsController extends AppController{ public function index(){ $country = array('India','United State of America','United Kingdom'); $this->set('country',$country); $gender = array('Male','Female'); $this->set('gender',$gender); } } ?>
HTML ページ上に textarea 要素を生成するために使用されます。
構文
Textarea(string $fieldName , array $options array() )
パラメータ
返品
生成された HTML テキスト入力要素
説明
テキストエリア ウィジェットを作成します
例
次のコードに示すように、<?php echo $this->Form->create(NULL,array('url'=>'/register')); echo '<label for="country">Country</label>'; echo $this->Form->select('country',$country); echo '<label for="gender">Gender</label>'; echo $this->Form->radio('gender ',$gender); echo '<label for="address">Address</label>'; echo $this->Form->textarea('address'); echo $this->Form->file('profilepic'); echo '<div>'.$this->Form->checkbox('terms'). '<label for="country">Terms ∓ CakePHP フォーム処理s</label> </div>'; echo $this->Form->button('Submit'); echo $this->Form->end(); ?>
ファイルを変更します。
config/routes.phpに RegistrationsController.php ファイルを作成します。 src/Controller/RegistrationsController.php. 次のコードをコントローラー ファイルにコピーします。 src/Controller/RegistrationsController.php src/Template にディレクトリ Registrations を作成し、そのディレクトリの下に index.php. という名前の View ファイルを作成します。そのファイル内の次のコード。 src/Template/Registrations/index.php 次の URL にアクセスして、上記の例を実行します- http://localhost/cakephp4/register 出力 実行すると、次の出力が表示されます。
以上がCakePHP フォーム処理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。