PHP FormBuilder ile Hızlıca Form Elementleri oluşturun

Html form elementlerini oop kullanarak basitleştirdim.Dilerseniz composer aracılığı ile yükleyebilir ve hemen form elementleri oluşturabilirsiniz.

GIT REPOSITORY : https://github.com/emexxRepo/formbuilder

Kurulum

composer require majorman/formbuilder

Kullanım

use MajorFormBuilder\Form;

require 'vendor/autoload.php';

echo $form = new Form(
    'foo.php', // hangi url'ye formu göndereceksiniz
    'post', // method tipi
    ['id' => 'fooID', 'class' => 'fooClass'], // propertyler
    'multipart/form-data' // isteğe bağlı 
    );

echo $form->endForm();

INPUT ELEMENTI EKLEMEK

// EXAMPLE :  INPUT TEXT
use MajorFormBuilder\Elements\Input;


echo $form->addElement(new Input)
    ->setType('text')
    ->addProperty([
        'onclick' => 'alert(\'Im an alert\')',
        'placeholder' => 'Im placeholder',
        'disabled' => 'disabled',
        'readonly' => 'readonly',
        'class' => 'testClass',
        'id' => 'testId',
    ])->addRule(
        ['min' => 1, 'maxlength' => 25, 'required' => 'required']
    );

/* Result : <input type="text" onclick="alert('Im a alert')" placeholder="Im placeholder" disabled="disabled" readonly="readonly" class="testClass" id="testId" min="1" maxlength="25" required="required">
*/

TextArea Elementi Eklemek

use MajorFormBuilder\Elements\TextArea;
//EXAMPLE TEXTAREA
echo $form->addElement(new TextArea)
          ->setValue('Lorem Ipsum dollar')
            ->addRule(['maxlength' => 25])
            ->setName('fooTextArea')
            ->addProperty(['style' => 'background:yellow']);

/* Result : <textarea  maxlength="25" name="fooTextArea" style="background:yellow">Lorem Ipsum dollar</textarea> */

SELECTBOX Elementi Eklemek

use MajorFormBuilder\Elements\SelectBox;

echo $form->addElement(new SelectBox)
    ->setName('fooSelectBox')
    ->addProperty(['class' => 'fooCls', 'id' => 'fooId'])
    ->setOptions([
        [
            'name' => 'Audi',
            'value' => 'audi',
            'properties' => [
                'style' => 'color:red'
            ]
        ],

        [
            'name' => 'BMW',
            'properties' => [
                'class' => 'fooClass', 'id' => 'fooId', 'disabled' => 'disabled'
            ],
            'value' => 'bmw'
        ],

        [
            'name' => 'Fiat',
            'value' => 'fiat',
            'selected' => 'selected',
            'properties' => [
                'style' => 'background:pink'
            ]
        ]
    ]);

    /* Result : <select name="fooSelectBox" class="fooCls" id="fooId"><option style="color:red">Audi</option><option class="fooClass" id="fooId" disabled="disabled">BMW</option><option style="background:pink" selected>Fiat</option></select> */
		

Tüm Örnekler için Git Reposuna gidin.