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 :

[Tableaux] Syntaxe: jusqu'où peut on aller?


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut [Tableaux] Syntaxe: jusqu'où peut on aller?
    bonjour,

    j'aimerais pouvoir declarer une variable en php, cette variable étant composé du caractere ' '.

    Par exemple j'aimerai pouvoir declarer :
    var $ma variable;
    $ma variable="toto";
    echo "$ma variable";

    Bien sur ce que j'ecris ne fonctionne pas et c'est pourquoi je vous demande de l'aide.

    Merci pour toute réponse

  2. #2
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    C'est parfaitement impossible au vu des conventions de nommage PHP, et aucune bidouille ne pourra te permettre de la faire

    L'espace est en PHP permet de dissocier les différents éléments de la syntaxe, et à moins de recoder PHP, aucune chance

  3. #3
    Membre expérimenté
    Avatar de guitou12
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 077
    Points : 1 561
    Points
    1 561
    Par défaut
    Je n'arrive pas bien à saisir l'intérêt de la chose là...

  4. #4
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Idem je vois vraiment pas l'intérêt...

    J'ai pas souvenir d'un langage qui permette des choses comme ça d'ailleurs (mais je connais pas tout et heureusement...).

  5. #5
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut
    en fait je pose la question de facon détournée: on m a demande de faire migrer des données de access vers mysql et odbc me convient. seulement odbc_fetch_object est récalcitrant sur certains attributs de ma table, ceux avec des espaces ce qui fait que je n'arrive pas a faire:

    echo $res->champ avec espace;//fonctionne pas
    echo $res->champ1;//fonctionne

    Si ca peut vous eclaicir ...

  6. #6
    Membre expérimenté
    Avatar de guitou12
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 077
    Points : 1 561
    Points
    1 561
    Par défaut
    Dans ce cas peut être que CA t'aidera

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 25
    Points : 21
    Points
    21
    Par défaut
    Les variables dynamiques semblent être la bonne solution, sinon tu pourrai aussi utiliser les expressions régulière pour remplacer tes " " par des "_".

    http://php.developpez.com/faq/?page=...ons_regulieres

    http://g-rossolini.developpez.com/tu...ns-regulieres/

  8. #8
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    Autant faire un str_replace tout simple dans ce cas...

    Le problème c'est la récupération des champs apparement, et à mon avis il a pas le choix certains noms de champs contiennent des espaces...

    Peut-être qu'en utilisant odbc_fetch_array et en parcourant le tableau résultat c'est plus pratique je sais pas...

  9. #9
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 258
    Points : 108
    Points
    108
    Par défaut
    remplacer les ' ' par des '_' ne fonctionne pas.

    les variables dynamiques non plus ne fonctionne pas.

  10. #10
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 494
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 494
    Points : 6 062
    Points
    6 062
    Par défaut
    ça c'est bien la galère d'access. Merci à Microsoft d'avoir autorisé les caractères spéciaux et les espaces dans des noms de tables et de champs.

  11. #11
    Membre expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Points : 3 115
    Points
    3 115
    Par défaut
    C'est pas parce que c'est autorisé qu'il faut le faire... Un peu de rigueur chez le concepteur de la BDD aurait empêché le problème.

  12. #12
    Membre expérimenté
    Avatar de guitou12
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 077
    Points : 1 561
    Points
    1 561
    Par défaut
    Citation Envoyé par JWhite
    C'est pas parce que c'est autorisé qu'il faut le faire... Un peu de rigueur chez le concepteur de la BDD aurait empêché le problème.
    Oui mais ça c'est trop demander parfois

  13. #13
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    Les fonctions _fetch_assoc() permettent d'obtenir un tableau associatif qui résoud ce genre problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $row = odbc_fetch_assoc($result);
    // $row peut contenir $row['champ avec espace']

    [Edit] L'écriture des variables dynamiques utilisant les accolades fonctionne assurément mais pas pour les propriétés d'un objet. Il te faut un tableau de valeurs.
    Exemples :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ${'ma variable'} = 'bouh';
    echo ${'ma variable'};
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $array = array('ma variable' => 'bouh');
    echo '<pre>';
    print_r($array);
    echo '</pre>';

  14. #14
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Points : 696
    Points
    696
    Par défaut
    Tout ça fonctionne avec php5

    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
    <?php
     
    class A {};
     
    $a = new A();
     
    $b = 'un nom de champ avec espaces';
     
    $a->$b = 'une valeur';
    $a->{'un nom de champ avec espaces'} = 'une valeur';
     
    print_r($a);
    print_r(get_object_vars($a));
     
    ?>

Discussions similaires

  1. [Drupal] Est-il possible de le personnaliser ? Jusqu'où peut-on aller ?
    Par stanley dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 29/05/2012, 17h26
  2. Jusqu'où peut aller Sage 1000 ?
    Par clem9 dans le forum SAGE
    Réponses: 1
    Dernier message: 15/12/2011, 18h24
  3. Jusqu'où peut-on aller?
    Par Lyche dans le forum La taverne du Club : Humour et divers
    Réponses: 11
    Dernier message: 17/06/2011, 11h13
  4. Image sur site : jusque quelle taux de compression peut on aller ?
    Par HwRZxLc4 dans le forum Webdesign & Ergonomie
    Réponses: 9
    Dernier message: 23/12/2007, 15h09
  5. Réponses: 8
    Dernier message: 30/01/2006, 14h34

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