[RESOLU] question sur une syntaxe spécifique

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] question sur une syntaxe spécifique

Re: question sur une syntaxe spécifique

par ynx » 31 oct. 2014, 11:42

Salut,

Tu peux trouver l'explication ici : http://php.net/manual/fr/language.types ... ng.complex
En complément : http://php.net/manual/fr/language.varia ... riable.php

Bonne journée

question sur une syntaxe spécifique

par Spols » 31 oct. 2014, 10:18

Bonjour,

Je viens de rencontrer une syntaxe dans un exemple d'utilisation de fonction de php.net
<?php
// Décrit les formats.
$strftimeFormats = array(
    'A' => 'Une représentation textuelle complète du jour',
    'B' => 'Nom du mois complet, basé sur la locale',
    'C' => 'Représentation sur 2 chiffres de l\'année (année, divisée par 100, tronquée en entier)',
    'D' => 'Identique à "%m/%d/%y"',
    'E' => '',
    'F' => 'Identique à "%Y-%m-%d"',
    'G' => 'La version complète, sur 4 chiffres de %g',
    'H' => 'Une représentation sur 2 chiffres de l\'heure au format 24-heures',
    'I' => 'Une représentation sur 2 chiffres de l\'heure au format 12-heures',
    'J' => '',
    'K' => '',
    'L' => '',
    'M' => 'Une représentation sur 2 chiffres des minutes',
    'N' => '',
    'O' => '',
    'P' => '"am" ou "pm" (en minuscule) basé sur l\'heure courante',
    'Q' => '',
    'R' => 'Identique à "%H:%M"',
    'S' => 'Une représentation sur 2 chiffres des secondes',
    'T' => 'Identique à "%H:%M:%S"',
    'U' => 'Numéro de la semaine pour l\'année courante, en commençant par le premier Dimanche comme première semaine',
    'V'  => 'ISO-8601:1988 numéro de la semaine de l\'année courante, commençant par la première semaine de l\'année avec au moins 4 jours de semaine, avec le Lundi comme début de semaine',
    'W' => 'Une représentation numérique de la semaine de l\'année, en commençant par le premier Lundi comme première semaine',
    'X' => 'Représentation préférée pour l\'heure, basée sur la locale, sans la date',
    'Y' => 'Une représentation sur 4 chiffres de l\'année',
    'Z' => 'L\'abréviation du décalage horaire, non fournie par %z (dépend sur système d\'exploitation)',
    'a' => 'L\'abréviation de la représentation textuelle du jour',
    'b' => 'L\'abréviation du nom du mois, basée sur la locale',
    'c' => 'Timestamp préféré basé sur la locale',
    'd' => 'Jour du mois sur 2 chiffres (avec le zéro initial)',
    'e' => 'Jour du mois, avec un espace précédent un seul chiffre',
    'f' => '',
    'g' => 'Une représentation sur 2 chiffres de l\'année au format ISO-8601:1988 (voir %V)',
    'h' => 'Abréviation du nom du mois, basée sur la locale (alias de %b)',
    'i' => '',
    'j' => 'Jour de l\'année, sur 3 chiffres avec zéro initial',
    'k' => 'Heure, au format 24-heures, avec un espace précédant un seul chiffre',
    'l' => 'Heure, au format 12-heures, avec un espace précédant un seul chiffre',
    'm' => 'Une représentation du mois sur 2 chiffres',
    'n' => 'Un caractère de nouvelle ligne ("\n")',
    'o' => '',
    'p' => '"AM" ou "PM" (en majuscule) basé sur l\'heure courante',
    'q' => '',
    'r' => 'Identique à "%I:%M:%S %p"',
    's' => 'Timestamp par rapport à l\'époque Unix',
    't' => 'Un caractère de tabulation ("\t")',
    'u' => 'Représentation numérique du jour de la semaine au format ISO-8601',
    'v' => '',
    'w' => 'Représentation numérique du jour de la semaine',
    'x' => 'Représentation préférée de la date, basée sur la locale, sans l\'heure',
    'y' => 'Représentation de l\'année sur 2 chiffres',
    'z' => 'Soit le décalage horaire depuis UTC ou son abréviation (suivant le système d\'exploitation)',
    '%' => 'Un caractère pourcentage ("%")',
);

// Résultats.
$strftimeValues = array();

// 2value les formats tout en supprimant les erreurs.
foreach($strftimeFormats as $format => $description){
    if (False !== ($value = @strftime("%{$format}"))){
        $strftimeValues[$format] = $value;
    }
}

// Trouve la valeur la plus longue.
$maxValueLength = 2 + max(array_map('strlen', $strftimeValues));

// Affiche tous les formats connus.
foreach($strftimeValues as $format => $value){
    echo "Format connu : '{$format}' = ", str_pad("'{$value}'", $maxValueLength), " ( {$strftimeFormats[$format]} )\n";
}

// Affiche tous les formats non connus.
foreach(array_diff_key($strftimeFormats, $strftimeValues) as $format => $description){
    echo "Format inconnu : '{$format}'   ", str_pad(' ', $maxValueLength), ($description ? " ( {$description} )" : ''), "\n";
}
?>
A plusieurs endroit {} sont utilisé dans une expression entouré par guillemet double. Quelle est l'utilité de ces crochets ?

Merci