IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Variable et tableau


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 43
    Par défaut Variable et tableau
    Bonjour,

    J'aimerais pouvoir intégrer le contenu d'une variable comme paramètre dans un fichier de config.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Soit la variable $name = "toto";
     
    Soit la ligne de configuration $params["channels"] = array("toto" );
    J'ai voulu remplacer la syntaxe de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $params["channels"] = array('".$name."');
    Mais cela ne me retourne pas la chaine de caractères souhaitée.

    Quelle peut-être la bonne syntaxe ?

    Merci bien

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2009
    Messages : 28
    Par défaut
    Est-ce ca que tu cherches ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $params["channels"]  = ${$name};

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 43
    Par défaut
    Pas exactement :

    J'ai essayé $params["channels"] = array($name);

    Voici la sortie de print_r($params) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Array ( [title] => test [language] => fr_FR [nick] => user1 [max_nick_len] => 25 [channels] => Array ( [0] => Test1 ) [showsmileys] => [dyn_params] => Array ( [0] => title [1] => nick [2] => channels ) [refresh_delay] => 10000 [max_msg] => 15 [shownotice] => 0 [frozen_nick] => 1 [isadmin] => [skip_proxies] => Array ( [0] => noflood ) [serverid] => 519501a91a7e5ea5d3549a5252451856 )
    L'appli en question (phpfreechat) me retourne :

    Paramètre manquant (/join {channelname})

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2009
    Messages : 28
    Par défaut
    Je ne vois pas ce que tu veux faire,
    On saitque $params est une array, maintenant on ne sait pas les types des elements de cette array.

    Si le parametre channels dans params est une string alors tu mets :
    $params['channel'] = $name;

    En faissant array($name), tu mets le contenu de la variable $name dans un tableau et ce tableau tu le mets dans la valeur de $params['channel']

    Donc que veux tu faire ?
    Qu'est-ce que $name contient le nom d'une variable ? ou est-ce la variable ?

    Tu t'aimerais voir quoi dans ton print_r ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 43
    Par défaut
    Merci chromo pour ton entraide mais il m'est difficile de répondre à toutes ces questions.
    Je ne maitrise pas suffisament le code source de l'application phpfreechat.

    $name contient bien la valeur toto.

    echo $name;
    exi();

    me retourne bien toto

    Si je saisis $params['channel'] = $name;

    Le code me renvoie ce message d'erreur :

    phpFreeChat cannot be initialized, please correct these errors:
    * Le paramêtre 'channels' doit être un tableau (array)

    Dans le code source de l'appli (src/commands/join.class.php), je lis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    class pfcCommand_join extends pfcCommand
    {
      var $usage = "/join {channelname}";
     
      function run(&$xml_reponse, $p)
      {
        $clientid    = $p["clientid"];
        $param       = $p["param"];
        $sender      = $p["sender"];
        $recipient   = $p["recipient"];
        $recipientid = $p["recipientid"];
     
        $c =& pfcGlobalConfig::Instance();
        $u =& pfcUserConfig::Instance();
     
        $channame  = trim($param);
        $chanrecip = pfcCommand_join::GetRecipient($channame);
        $chanid    = pfcCommand_join::GetRecipientId($channame);
     
        if ($channame == "")
        {
        ...
        }
        if(!isset($u->channels[$chanid]))
        {
          if ($c->max_channels <= count($u->channels))
          {
            // the maximum number of joined channels has been reached
            $xml_reponse->script("pfc.handleResponse('".$this->name."', 'max_channels', Array());");
            return;
          }
     
          $u->channels[$chanid]["recipient"] = $chanrecip;
          $u->channels[$chanid]["name"]      = $channame;
          $u->saveInCache();
    ...

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2009
    Messages : 28
    Par défaut
    Vu comme ça, mais je ne connais pas phpFreeChat, il s'attend a recevoir un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $params['channel'] = array($name=>array('recipient'=>'xxxxx', 'name'=>'yyyyy'));
    ou $name est le nom de ton channel ID.

    Maintenant visiblement il fait la conversion d'une array vers un objet (vu qu'ils utilisent des ->)

Discussions similaires

  1. [VBA-E]variable en tableau - controle combobox
    Par gojaru dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 06/04/2006, 17h07
  2. supprimer lignes d'une variable session tableau sauf 1
    Par epeichette dans le forum Langage
    Réponses: 1
    Dernier message: 30/03/2006, 17h41
  3. Réponses: 1
    Dernier message: 20/11/2005, 17h06
  4. envoyer une variable(un tableau) via un lien href
    Par sebduduf dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 11/11/2005, 16h52
  5. variable type tableau (vector) statique / constants
    Par Kaktus dans le forum SL & STL
    Réponses: 5
    Dernier message: 13/10/2005, 22h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo