Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pb de tableaux

3 réponses
Avatar
jp.witz
Bonjour
J'ai une variable
$param="'MargeHaut'=>17,'MargeBas'=>10,'FontHaut'=>10,'LigneHaut'=>5,'Hobs'=
>20,'Hsign'=>20"
je veux transformer cette variable $param en tableau
Si je fais $P=array($param) , le tableau $P ne se crée pas
Par contre
$P=array('MargeHaut'=>17,'MargeBas'=>10,'FontHaut'=>10,'LigneHaut'=>5,'Hobs'
=>20,'Hsign'=>20)
me donne bien le tableau attendu.
Qu'ai-je mal fait? Y a-t-il une autre fonction que array() pour faire cette
opération?

Merci

Jean-Paul

3 réponses

Avatar
m-e-
"jp.witz" a écrit dans le message de news: c56vn0$cno$
Bonjour
J'ai une variable
$param="'MargeHaut'=>17,'MargeBas'=>10,'FontHaut'=>10,'LigneHaut'=>5,'Hobs' > >20,'Hsign'=>20"
je veux transformer cette variable $param en tableau
Si je fais $P=array($param) , le tableau $P ne se crée pas
Par contre
$P=array('MargeHaut'=>17,'MargeBas'=>10,'FontHaut'=>10,'LigneHaut'=>5,'Hobs'
=>20,'Hsign'=>20)
me donne bien le tableau attendu.
Qu'ai-je mal fait? Y a-t-il une autre fonction que array() pour faire cette
opération?

Merci

Jean-Paul



Tu peux y arriver avec "eval" :

<?php
$param = "'MargeHaut'=>17,'MargeBas'=>10,'FontHaut'=>10,'LigneHaut'=>5,'Hobs'=>20,'Hsign'=>20";
eval("$P=array($param);");
?>


Mais je ne sais pas si c'est très adapté à ton besoin. Quel est le contexte d'une telle opération ?

Avatar
Guillaume Bouchard
jp.witz wrote:
Bonjour
J'ai une variable
$param="'MargeHaut'=>17,'MargeBas'=>10,'FontHaut'=>10,'LigneHaut'=>5,'Hobs' >
20,'Hsign'=>20"


je veux transformer cette variable $param en tableau
Si je fais $P=array($param) , le tableau $P ne se crée pas



Cette operation n'est pas faisable par une fonction :

array() prend en parametre une suite d'instruction ( chaine, entier,
tableaux) separé par des virgules. Et la tu lui passe une seul chaine de
caractere.

Tu dois pouvoir t'en sortir avec eval

$param = eval('array('.$param.')');

Mais c'est gore, et tres peut sécurisé, fait donc attention.

--
Guillaume.


Avatar
loquace
regardes les fonction explode et implode de la doc.
Tu donnes le separateur ','
le mieux etant de construire direct ton tableau au lieu de construire ta
variable.
Lis bien les fonction relatives au tableau dans la doc
www.php.net. Tu trouvera ton tresor.
seb