modifs.mineures sans commentaires
This commit is contained in:
parent
23b8dd7d19
commit
dbb67bc3bc
|
@ -1,19 +1,21 @@
|
||||||
# nulib\web\content
|
# nulib\web\content
|
||||||
|
|
||||||
un contenu web est un type spécial de contenu permettant de gérer aussi les
|
un contenu de tag est un type spécial de contenu permettant de gérer aussi les
|
||||||
attributs avec une syntaxe particulière.
|
attributs du tag avec une syntaxe particulière.
|
||||||
|
|
||||||
les règles diffèrent légèrement:
|
les règles diffèrent légèrement d'un contenu classique:
|
||||||
- Si le contenu n'est pas un tableau:
|
- Si le contenu n'est pas un tableau:
|
||||||
- une chaine est quotée avec `htmlspecialchars()`
|
- une chaine est quotée avec `htmlspecialchars()`
|
||||||
- un scalaire ou une instance d'objet sont pris tels quels
|
- un scalaire ou une instance d'objet sont pris tels quels
|
||||||
- Sinon, le contenu doit être un tableau, séquentiel ou associatif
|
- Sinon, le contenu doit être un tableau, séquentiel ou associatif
|
||||||
|
- les Closure sont appelés dès la résolution, et leur valeur de retour est
|
||||||
|
inséré tel quel dans le flux
|
||||||
- les éléments séquentiels scalaires ou instance d'objets sont pris tels quels
|
- les éléments séquentiels scalaires ou instance d'objets sont pris tels quels
|
||||||
- les éléments associatifs sont des attributs, et sont fusionnés le cas échéant
|
- les éléments associatifs sont des attributs, et sont fusionnés le cas échéant
|
||||||
- les éléments séquentiels de type tableau séqentiel sont du contenu dynamique
|
- les éléments séquentiels de type tableau sont évalues récursivement avec les
|
||||||
- les éléments séquentiels de type tableau associatif sont évalues
|
mêmes règles (sauf la partie chaine quotée avec `htmlspecialchars()`)
|
||||||
récursivement avec les mêmes règles (sauf la partie chaine quotée avec
|
- il n'y a pas de syntaxe pour les éléments dynamiques comme les contenus
|
||||||
`htmlspecialchars()`)
|
classiques
|
||||||
|
|
||||||
Par exemple, les deux contenus web suivants sont équivalents:
|
Par exemple, les deux contenus web suivants sont équivalents:
|
||||||
~~~php
|
~~~php
|
||||||
|
@ -22,31 +24,39 @@ $content1 = [
|
||||||
"before",
|
"before",
|
||||||
"class" => "first",
|
"class" => "first",
|
||||||
["class" => "second"],
|
["class" => "second"],
|
||||||
["func", "arg"],
|
function() { return func($arg); },
|
||||||
|
"attr" => [
|
||||||
|
"static",
|
||||||
|
"true" => true,
|
||||||
|
"false" => false,
|
||||||
|
],
|
||||||
"after",
|
"after",
|
||||||
];
|
];
|
||||||
# donne le même résultat que:
|
# donne le même résultat que:
|
||||||
$content2 = [
|
$content2 = [
|
||||||
"class" => "first second",
|
"class" => "first second",
|
||||||
|
"attr" => "static true",
|
||||||
"before",
|
"before",
|
||||||
func("arg"),
|
...cl::with(func("arg")),
|
||||||
"after",
|
"after",
|
||||||
];
|
];
|
||||||
~~~
|
~~~
|
||||||
|
|
||||||
lors de la définition d'attributs,
|
lors de la définition d'attributs,
|
||||||
- un tableau séquentiel est un appel de fonction
|
- les valeurs séquentielles sont prises telles quelles
|
||||||
- un tableau associatif permet de faire des définitions conditionnelles
|
- les valeurs associatives permettent de faire des définitions conditionnelles
|
||||||
|
- les Closure sont appelés dès la résolution, et leur valeur de retour est
|
||||||
|
inséré tel quel dans le flux
|
||||||
|
|
||||||
Par exemple, les deux contenus web suivants sont équivalents:
|
Par exemple, les deux contenus web suivants sont équivalents:
|
||||||
~~~php
|
~~~php
|
||||||
# ce contenu:
|
# ce contenu:
|
||||||
$content1 = [
|
$content1 = [
|
||||||
["class" => ["func", "arg"]],
|
"class" => function() { return func($arg); },
|
||||||
];
|
];
|
||||||
# donne le même résultat que:
|
# donne le même résultat que:
|
||||||
$content2 = [
|
$content2 = [
|
||||||
"class" => func("arg"),
|
"class" => func($arg),
|
||||||
];
|
];
|
||||||
~~~
|
~~~
|
||||||
De même, les deux contenus web suivants sont équivalents:
|
De même, les deux contenus web suivants sont équivalents:
|
||||||
|
@ -54,12 +64,12 @@ De même, les deux contenus web suivants sont équivalents:
|
||||||
# si $is_primary && !$is_danger
|
# si $is_primary && !$is_danger
|
||||||
# alors ce contenu:
|
# alors ce contenu:
|
||||||
$content1 = [
|
$content1 = [
|
||||||
["class" => [
|
"class" => [
|
||||||
"btn",
|
"btn",
|
||||||
"btn-primary" => $is_primary,
|
"btn-primary" => $is_primary,
|
||||||
"btn-danger" => $is_danger,
|
"btn-danger" => $is_danger,
|
||||||
"btn-default" => !$is_primary && !$is_danger,
|
"btn-default" => !$is_primary && !$is_danger,
|
||||||
]],
|
],
|
||||||
];
|
];
|
||||||
# donne le même résultat que:
|
# donne le même résultat que:
|
||||||
$content2 = [
|
$content2 = [
|
||||||
|
|
Loading…
Reference in New Issue