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 :

POO - constantes/variables lisibles partout sans instanciation


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 56
    Points : 44
    Points
    44
    Par défaut POO - constantes/variables lisibles partout sans instanciation
    Bonjour
    J'ai un petit souci.
    Je sais pas si c est moi qui bugge.
    Imaginons que j'ai une appli web et je veux que les paramètres des urls portent toujours le meme nom quand je les récupère. Normaliser les noms de mes paramètres en fait, comme ça je suis sur d'utiliser toujours le même nom. Un truc bateau quoi.

    Pour faire ca j ai fait une classe ParametersName comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    class ParametersName{
    	const param_id = "id";
    }
    Et ensuite dans mes autres classes je l'appelle comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public function checkAction(){
        	echo "id ".ParametersName::param_id;
    }
    Mais ça ne marche pas. Il doit y avoir un souci d instanciation de ma classe ParametersName que je n'instancie jamais en fait. Mais je pensais que c'était faisable.
    Comment je peux faire un truc comme ça. (Sans variable $_GLOBAL ou autres) ?

    Si c'est possible
    Merci

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 727
    Points
    10 727
    Par défaut
    ta classe est bien chargé avec un include/require au l'autolaod ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    56
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 56
    Points : 44
    Points
    44
    Par défaut
    Salut
    Non ma classe n'est pas chargée.
    Je sais que ça vient de là et donc il faut que je charge cette classe.
    J'utilise le Zend Framework et j'avoue que je bloque sur certains trucs, notamment les histoires de Bootstrap.
    Je suppose qu'il faut que je charge ma classe de constante dans le bootstrap mais franchement je capte pas trop comment ça marche pour charger une simple classe..
    En gros juste faire un include...

    Dans mon bootstrap j ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    protected function _initAutoload()
    {
        $loader = new Zend_Application_Module_Autoloader(array(
            'namespace' => 'Utils',
            'basePath'  => APPLICATION_PATH.'/utils'));
        return $loader;
    }
    J'ai renommé ParametersName en UtilsParametersName qui est dans le dossier utils...

Discussions similaires

  1. [VB6]Les variables se vide sans aucun raison !
    Par themik dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 23/03/2006, 19h59
  2. [POO] [Objets]Variables temporaires/permanentes?
    Par Zenol dans le forum Langage
    Réponses: 38
    Dernier message: 08/12/2005, 21h07
  3. Constantes / Variables globales utilisateur
    Par vynce dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 30/11/2005, 14h56
  4. [POO] Jusqu'à quel niveau d'instanciation aller ?
    Par MiJack dans le forum Langage
    Réponses: 6
    Dernier message: 31/10/2005, 15h43
  5. Réponses: 2
    Dernier message: 29/08/2005, 16h35

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