Yaml



Tableau simple

YAML
# Serveur Mail Gmail
gmail:
    host: smtp.gmail.com
    port: 465
    username: proxidata1@gmail.com
    password: 456835216
    smtpsecure: ssl
PHP
<?php
	$this->host           = $app['config']['gmail']['host'];
	$this->port           = $app['config']['gmail']['port'];
	$this->username       = $app['config']['gmail']['username'];
	$this->password       = $app['config']['gmail']['password'];
	$this->smtpsecure     = $app['config']['gmail']['smtpsecure'];
?>
Tableau avancé

YAML
# Abonnement
abonnement:
    offre: unique

    title: En ce moment offre unique à <strong>20 €</strong> par mois, soit une réduction de <strong>40 %</strong> !
    largeur: true

    #title:
    #largeur: false

    unique:
        - { duree: 1, prix: 20, file: PROXIDATA 1 MOIS AVEC REMISE - FICHE PRODUIT 2017.pdf }

    normal:
        - { duree: 1, prix: 34, file: PROXIDATA 1 MOIS - FICHE PRODUIT 2017.pdf }
        - { duree: 3, prix: 90, file: PROXIDATA 3 MOIS AVEC REMISE - FICHE PRODUIT 2017.pdf }
        - { duree: 6, prix: 150, file: PROXIDATA 6 MOIS AVEC REMISE - FICHE PRODUIT 2017.pdf }
        - { duree: 12, prix: 240, file: PROXIDATA 1 AN - FICHE PRODUIT 2017.pdf }
PHP
<?php
	return $app['twig']->render('consultation/vue.twig', [
	    'abonnement' => $app['config']['abonnement']
	]);
?>
TWIG {{ dump(abonnement) }}
array:5 [▼
  "offre" => "unique"
  "title" => "

Offre du moment valable jusqu'au 28/02/2017 :
20 € / utilisateur / mois au lieu de 34 €,
soit une réduction de plus de 40 % !" "largeur" => true "unique" => array:1 [▼ 0 => array:3 [▼ "duree" => 1 "prix" => 20 "file" => "PROXIDATA 1 MOIS AVEC REMISE - FICHE PRODUIT 2017.pdf" ] ] "normal" => array:4 [▼ 0 => array:3 [▼ "duree" => 1 "prix" => 34 "file" => "PROXIDATA 1 MOIS - FICHE PRODUIT 2017.pdf" ] 1 => array:3 [▼ "duree" => 3 "prix" => 90 "file" => "PROXIDATA 3 MOIS AVEC REMISE - FICHE PRODUIT 2017.pdf" ] 2 => array:3 [▼ "duree" => 6 "prix" => 150 "file" => "PROXIDATA 6 MOIS AVEC REMISE - FICHE PRODUIT 2017.pdf" ] 3 => array:3 [▼ "duree" => 12 "prix" => 240 "file" => "PROXIDATA 1 AN - FICHE PRODUIT 2017.pdf" ] ] ]
TWIG
<div id="offre-choix" class="contenu-partie">
	<p class="texte-precision">Veuillez choisir une offre
		{% if abonnement["title"] is not null %}{{ abonnement["title"]|raw }}{% endif %}
	</p>

	<ul>
		{% for key, abo in abonnement[abonnement["offre"]] %}
		<li {% if abonnement["largeur"] == true %}style="width:100%;"{% endif %}>
			<div>
				<input id="radio{{ key+1 }}" type="radio" value="{{ abo.duree }}" required="required" name="radio-form">
				<label class="titre-choix" for="radio1"><span>Accès </span><span class="offre-duree">{{ abo.duree }} mois</span></label>
				<div class="offre-prix">
					<div>
						<span class="super-prix">{{ abo.prix }} €</span><br><span class="prix-precision">HT/Utilisateur</span>
					</div>
				</div>
			</div>
			<a href="{{ path('getfile', {'type': 'offres', 'folder': abonnement["offre"], 'file': abo.file }) }}" title="Télécharger l'offre en PDF">
				{{ svg["pdf"]|raw }}
				<span class="dl-fiche-produit">Télécharger la fiche produit</span>
			</a>
		</li>
	    {% endfor %}
	</ul>
</div>
Installation sur Debian / PHP 7

Installation des dépendances
apt install php-pear libyaml-dev
Installation de 'pecl'
apt install php-dev # install la commande 'pecl'
pecl install yaml
Déclarer l'extension à PHP
nano /etc/php/7.0/apache2/php.ini

# Ajouter la ligne: 'extension=yaml.so'
Redémarrer Apache
service apache2 restart
php --info
PHP Yaml extension
Installation sur XAMPP / PHP 7

  • Télécharger la dernière version pour PHP7 sur pecl.php.net (7.1 Thread Safe (TS) x86)
  • Extraire l'archive
  • Copier php_yaml.dll dans xampp/php/ext/
  • Copier yaml.dll dans xampp/php/
  • Ajouter la ligne 'extension=php_yaml.dll' au xampp/php/php.ini
  • Redémarrer Apache