Autoload

Utilisation de l'autoload de composer

Exemple

Dans le dossier formulaire, ajoutez le dossier 3-autoload

Dans le dossier 3-autoload , ajoutez le fichier index.php

1
<?php
2
3
use App\Form\Champ\Input;
4
use App\Form\Champ\Select;
5
6
require_once join(DIRECTORY_SEPARATOR, [__DIR__, 'vendor', 'autoload.php']);
7
8
$texte = new Input("text", "nom", ['label' => "Nom", 'value' => "bonjour"]);
9
$radio1 = new Input("radio", "radio", ['label' => "Radio1", 'tag' => "span", 'value' => "radio1", 'checked' => 'checked']);
10
$radio2 = new Input("radio", "radio", ['label' => "Radio2", 'tag' => "span", 'value' => "radio2"]);
11
$range = new Input("range", "range", ['label' => "Range", 'value' => 10, 'min' => 0, 'max' => 20]);
12
$select = new Select("liste[]", [[1, "choix1"], [2, "choix2", "selected"], [3, "choix3"]], ['label' => 'Choix', 'size' => 4, 'multiple' => 'multiple']);
13
$submit = new Input("submit", "envoyer", ['value' => "Envoyer"]);
14
15
?>
16
17
<form method='post'>
18
    <?= $texte . $radio1 . $radio2 . $range . $select . $submit ?>
19
</form>
20
21
<pre>
22
<?php dump($_POST) ?>
23
</pre>
  • Ajoutez composer init avec l'espace de nom App dans un dossier app.

  • Ajoutez symfony/var-dumper

  • Déplacez vos classes dans le dossier app et ajoutez les namespaces et les use.

App\Form\AbstractChamp

App\Form\Champ\Input

App\Form\Champ\Select

App\Form\Champ\Option