Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1090 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  qu'est-ce que c'est que ces acolades ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

qu'est-ce que c'est que ces acolades ?

n°1814511
brisssou
8-/
Posté le 20-11-2008 à 15:48:17  profilanswer
 

Je suis une grosse buse en PHP, et là on vient de nous coller, avec 2 autres collègues, sur une appli qui utilise un framework obscure (free[Ride]Engine) dont on essaye de comprendre le fonctionnement.
Voilà un extrait de code qui nous passe au dessus :

Code :
  1. if( @strlen($_SERVER[strtoupper($_rule['type'])])>0 ){
  2.                            $this->log("  ". _("Rule 'match' failed" ) . " ( ${_rule['type']} ". _("is empty" ) .')', PEAR_LOG_INFO);
  3.                        }else{
  4.                            $this->log("  " . _("Rule sucessfully added" ) ." ( $_rule{['type']} ". _("is not empty" ) . ')');
  5.                            $_request_->addAttribute($_rule['paramName'],$_rule['paramValue']);
  6.                        }
  7.                        $this->log(_("Found value" )." : " . @$_SERVER[strtoupper($_rule['type'])], PEAR_LOG_INFO);


 
on comprend pas trop la syntaxe  ${_rule['type']} ou $_rule{['type']} ... autant $_rule['type'] on voit bien, mais les deux autres... aucune idée.
 
ça parle à quelqu'un ici ?
 
merci de votre aide.


---------------
HFR - Mes sujets pour Chrome - Firefox - vérifie les nouveaux posts des topics suivis/favoris
mood
Publicité
Posté le 20-11-2008 à 15:48:17  profilanswer
 

n°1814616
rufo
Pas me confondre avec Lycos!
Posté le 20-11-2008 à 18:07:52  profilanswer
 

${$Var}, c'est pour appeler une variable "dynamiquement". Je m'explique.

Code :
  1. $Toto = "coucou";
  2. $Var = "Toto";
  3. echo ${$Var};


 
ça va afficher "coucou".


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°1814617
rufo
Pas me confondre avec Lycos!
Posté le 20-11-2008 à 18:09:39  profilanswer
 

${_rule['type']} fait un peut la même chose je pense. Pour moi, _rule['type'] est une constante mais je ne savais pas qu'on pouvoir déclarer un tableau en constante. :??:


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°1814624
Profil sup​primé
Posté le 20-11-2008 à 18:46:38  answer
 

on dirait que ce n'est pas une constante puisque çà se trouve dans une string.
Vu qu'il s'agit d'un élément de tableau, je dirais que çà correspond au fait que ceux ci doivent être entourés d'accolades dans une string formée de guillemets doubles.
Ce qui me choque, c'est que dans ce cas il me semblait qu'il fallait faire :

Code :
  1. echo "{$array['key']}";


 
et non
 

Code :
  1. echo "${array['key']}";


 

n°1815109
rufo
Pas me confondre avec Lycos!
Posté le 21-11-2008 à 17:59:02  profilanswer
 

les 2 syntaxes sont valides, mais ne font pas la même chose. mettons qu'on ait :

Code :
  1. $array['key'] = "toto";
  2. $toto = "coucou";


 
Le premier code va afficher :

Code :
  1. {toto}


 
Le 2ième :

Code :
  1. coucou


 
C'est pas la même chose. Par contre, je comprends pas la syntaxe ${_rule['type']}. Y'aurait un $ devant _rule['type'], ok, mais sans le $, je vois pas...:/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°1815118
ionik
Posté le 21-11-2008 à 18:15:03  profilanswer
 

en faite vous parler en simplifiant de :

Code :
  1. $toto = 'coucou';
  2. $tutu = 'toto';
  3. echo $$tutu;


 
Cela affichera coucou
 
c'est le meme principe mais par contre je comprend pas la syntax pareil :D


---------------
Recette cookeo Recette de cuisine
n°1815119
Profil sup​primé
Posté le 21-11-2008 à 18:16:13  answer
 

poste dans blabla@php, où passent des gens plus expérimentés que moi pour te répondre :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  qu'est-ce que c'est que ces acolades ?

 

Sujets relatifs
Plus de sujets relatifs à : qu'est-ce que c'est que ces acolades ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR