Lecture/écriture d'un fichier retournant un tableau

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 : Lecture/écriture d'un fichier retournant un tableau

Re: Lecture/écriture d'un fichier retournant un tableau

par Spols » 04 déc. 2017, 12:09

je pense que cela dépasse mes compètences. Désolé de ne pas pouvoir aider

Re: Lecture/écriture d'un fichier retournant un tableau

par Rtransat » 01 déc. 2017, 16:57

Malheureusement ça vient bien de la lecture.
Lors de l'inclusion d'un fichier, PHP l'exécute et du coup il transforme la résolution de classe en chaîne de caractère.
Il faudrait que je trouve une solution pour transformer la chaîne en résolution de classe.
Ou alors faire un parser pour gérer mon cas. Mais je préférais demander à la communauté avant, il doit y avoir un moyen plutôt simple que de développer un parser.

Re: Lecture/écriture d'un fichier retournant un tableau

par Spols » 01 déc. 2017, 16:54

si php interpréte comme une chaine c'est a cause des '' qui me semble pouvoir venir que de l'écriture

Re: Lecture/écriture d'un fichier retournant un tableau

par Rtransat » 01 déc. 2017, 12:43

À l'écriture tout fonctionne bien, zend-code gère l'ajout de la résolution de class (::class), c'est lors de l'ouverture le problème.
PHP interprète la résolution de classe comme une chaîne, du coup mon tableau ne contient que des chaînes plutôt que ::class

Re: Lecture/écriture d'un fichier retournant un tableau

par Spols » 01 déc. 2017, 12:41

ca doit venir de zend alors la méthode n'est pas prévu pour l'ajout de class et comme il voit une chaine de caractère il lui ajoute des ''
Il faut trouver le bonne endroit du code de zend et réécrire la fonction en conséquence

Re: Lecture/écriture d'un fichier retournant un tableau

par Rtransat » 01 déc. 2017, 09:47

En soit il n’y a pas grand chose à montrer.

Je fais un include du fichier je manipule mon tableau, j’ajoute des clés et valeurs. Je gère la creation du fichier avec zend-code qui ce charge de faire un file_put_contents via la classe FileGenerator

Voici en détails la classe qui permet de créer le tableau
https://github.com/zendframework/zend-c ... erator.php

Re: Lecture/écriture d'un fichier retournant un tableau

par Spols » 01 déc. 2017, 09:27

Comment écris tu dans ce fichier ? avec un script ? alors montre le nous

Lecture/écriture d'un fichier retournant un tableau

par Rtransat » 30 nov. 2017, 20:43

Bonjour,

J'ai une problèmatique que je n'arrive pas à résoudre. Je vous explique.

J'inclus un fichier retournant un tableau contenant quelque chose comme ça :

<?php
return [
    \Foo\Bar::class => \Foo\BarFactory::class,
    \Bar\Foo::class => \Bar\FooFactory::class,
];

Par la suite j'écris dans ce fichier d'autre ligne similaire mais le problème est que cela est interprété en chaîne de caractère car lors de l'ouverture les résolutions de classe (::class) sont interprétés et sont transformés en chaines. Ce qui fait que mon fichier final après écriture devient :

<?php
return [
    '\Foo\Bar' => '\Foo\BarFactory',
    '\Bar\Foo' => '\Bar\FooFactory',
];

Je voulais savoir si vous connaissez un moyen pour parer le problème en gardant l'inclusion du fichier ce qui me permet de manipuler le tableau facilement ?