Créer un dossier td1_Yaml, ouvrir un terminal dans ce dossier.
Dans documentation de Symfony on trouve la documentation sur les différents composants: http://symfony.com/components , voir http://symfony.com/doc/current/components/index.html
config/
et sous dossiers).composer require symfony/yaml
autoload.php
.Exemple : Créer un fichier test.php avec le contenu suivant (code issu de la documentation de symfony) :
<?php
require "vendor/autoload.php";
// documentation : http://symfony.com/doc/current/components/yaml.html
use Symfony\Component\Yaml\Yaml;
$value = Yaml::parse(file_get_contents('file.yaml'));
var_dump($value);
valeur1: 25
valeur2: du texte
valeur3:
- param1
- param2
php test.php
php -S localhost:8000 test.php
ou
php -S 127.0.0.1:8000 -ddisplay_errors=1 -dzend_extension=xdebug.so -dxdebug.remote_enable=1 -dxdebug.remote_autostart=1 -dxdebug.remote_port=3004 test.php
composer require symfony/var-dumper
ouvrir le ficher composer.json
remplacer la commande var-dump
par dump
avec le deuxième exemple de la documentation de YAML
<?php
require "vendor/autoload.php";
use Symfony\Component\Yaml\Yaml;
try {
$value = Yaml::parse(file_get_contents('file.yaml'));
dump($value);
} catch (ParseException $e) {
printf("Unable to parse the YAML string: %s", $e->getMessage());
}
valeur4: [param1,param2,"param 3",param 4]
"exemple json": {"valeur5": "ma valeur", "valeur6": "ma valeur 2"}
essai: ~
voir la documentation : http://sweetohm.net/article/introduction-yaml.html
Que définit le symbole ~
derrière une clé ?
Voici un exemple avec une ancre (documentation), ajouter le code ci-dessous au fichier file.yaml et tester.
famille:
- &rob
nom: Robert
age: 55
- &elo
nom: Elodie
age: 52
- nom: Mickael
age: 31
parents:
- *rob
- *elo
exemple : https://github.com/RailsApps/learn-rails/blob/master/config/database.yml
2 composants essentiels dans SYMFONY
Il est intéressant sans entrer dans le détail de rappeler le principe des objets Request Response, et surtout de l’objet Kernel. Cet objet Kernel analyse l’objet Request, recherche la méthode du contrôleur qui correspond à la route de la requête, et enfin renvoie un objet Response