Bonjour Ă toutes et Ă tous,
Je bloque sur l’assignation du résultat d’une inclusion à un #SET.
Mon inclusion renvoie un tableau sérialisé en faisant [(#GET{donnees}|serialize)].
En passant de l’écriture #INCLURE
Ă <INCLURE>
, rien ne va plus…
Contexte :
L’inclusion renvoie une sérialisation assez longue pour laquelle je souhaite bénéficier d’une mise en cache en passant par l’écriture <inclure>
permettant de définir dans la noisette une durée de cache.
Ma page « appelante » se contente elle de produire un json : en faisant [(#GET{donnees}|unserialize|json_encode)]
avec les données issues de mon inclusion.
Tests :
- Si je fais
, j’obtiens mes données sérialisées
[(#SET{donnees, [(#INCLURE{fond=mon_inclure})] })]
- Si je fais
, j’obtiens une erreur d’exécution
[(#SET{donnees, <INCLURE{fond=mon_inclure}> })]
Erreur transmise :
unserialize(): Error at offset 0 of 511 bytes in /var/www/monsite/ecrire/public/composer.php(94) : eval()'d code on line 36
J’ai aussi tente l’inclusion avec un paramètre {env}
:
[(#SET{donnees,<INCLURE{fond=mon_inclure}{env}>})]
Dans ce cas, j’obtiens ces deux warnings :
- Trying to access array offset on value of type bool
- Array to string conversion
Questions :
- Que faire !?
- L’écriture avec
<inclure>
dans un#GET
est-elle impossible ? Le compilateur ne gère pas ce cas ?
Merci pour votre aide bienvenue !