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

Zend Framework PHP Discussion :

Configuration de l'environnement [ZF 1.9]


Sujet :

Zend Framework PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 39
    Points : 56
    Points
    56
    Par défaut Configuration de l'environnement
    Bonjour,

    J'ai un souci pour définir mon environnement de travail.

    Voici mon fichier application.ini :

    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    [production]
    ; PHP settings we want to initialize
    phpSettings.display_startup_errors = 0
    phpSettings.display_errors = 0
     
    ; Make sure the following is on the include_path
    includePaths.library = APPLICATION_PATH "/../library"
     
    ; Indicate the path and classname of the bootstrap
    bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
    bootstrap.class = "Bootstrap"
     
    ; Bootstrap resources:
     
    ; - Front Controller
    ; - Layout
    resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
    resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
    resources.view[] =
     
    ; initialize database
    resources.db.adapter = "MYSQLI"
    resources.db.params.host = "localhost"
    resources.db.params.username = "monvrainom"
    resources.db.params.password = "myrealpass"
    resources.db.params.dbname = "cms"
    resources.db.params.date_format = "YYYY-MM-ddTHH:mm:ss"
    resources.db.isDefaultTableAdapter = true
     
     
    [staging : production]
     
    [testing : production]
    phpSettings.display_startup_errors = 1
    phpSettings.display_errors = 1
     
    [development : production]
    phpSettings.display_startup_errors = 1
    phpSettings.display_errors = 1
     
     
    ; initialize database
    resources.db.adapter = "MYSQLI"
    resources.db.params.host = "localhost"
    resources.db.params.username = "root"
    resources.db.params.password = ""
    resources.db.params.dbname = "cms"
    Si je fait un :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // Define application environment
    defined('APPLICATION_ENV')
        || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'development'));
     
    var_dump($this->getOptions());
    J'ai toujours le même résultat que si je fais un :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // Define application environment
    defined('APPLICATION_ENV')
        || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
     
    var_dump($this->getOptions());
    A savoir le résultat suivant :

    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
     
    array
      'phpsettings' => 
        array
          'display_startup_errors' => string '1' (length=1)
          'display_errors' => string '1' (length=1)
      'includepaths' => 
        array
          'library' => string 'C:\wamp\www\CMS\application/../library' (length=38)
      'bootstrap' => 
        array
          'path' => string 'C:\wamp\www\CMS\application/Bootstrap.php' (length=41)
          'class' => string 'Bootstrap' (length=9)
      'resources' => 
        array
          'frontController' => 
            array
              'controllerDirectory' => string 'C:\wamp\www\CMS\application/controllers' (length=39)
          'layout' => 
            array
              'layoutPath' => string 'C:\wamp\www\CMS\application/layouts/scripts' (length=43)
          'view' => 
            array
              0 => string '' (length=0)
          'db' => 
            array
              'adapter' => string 'MYSQLI' (length=6)
              'params' => 
                array
                  ...
              'isDefaultTableAdapter' => string '1' (length=1)
    Comment cela se fait il ?

    Je devrais avoir display_startup_errors à 1 pour production, et display_startup_errors à 0 pour development.

    Quelqu'un pourrait il m'aider à comprendre la définition de l'environnement ?

    Je pige pas, je suis dessus depuis 4 heures et quelque chose m'échappe.

    Merci.

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 497
    Points : 12 600
    Points
    12 600
    Par défaut
    Bonjour,

    Regardez votre fichier .Htaccess !

    Votre environnement est définis dedans

  3. #3
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    defined('APPLICATION_ENV')
        || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
    La variable APPLICATION_ENV est sûrement définie dans le .htaccess, donc il n'y a pas redéfinition et c'est pour cela que vous ne voyez pas de changement.

  4. #4
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 497
    Points : 12 600
    Points
    12 600
    Par défaut
    ben c'est ce que j'ai dit non !!!!!!!!!!

  5. #5
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par MaitrePylos Voir le message
    ben c'est ce que j'ai dit non !!!!!!!!!!
    Tout à fait.
    Mais des explications un peu plus détaillées ne font pas de mal pour les personnes qui ne sont pas à l'aise avec les variables d'environnement.

    non ?

  6. #6
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 497
    Points : 12 600
    Points
    12 600
    Par défaut
    Tout à fait d'accord, mais alors il faut expliquer pourquoi la fonction getenv va lire dans le fichier .Htaccess et que c'est dans ce fichier qu'il trouvera la variable d'environnement 'APPLICATION_ENV'.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 39
    Points : 56
    Points
    56
    Par défaut
    Bonjour bonjour,

    Merci de vos réponses, ne vous disputez pas, je suis pour la paix des ménages

    Je n'ai pas reçu de mail lors de la réponse, excusez ma réponse tardive. Désolé.

    Effectivement, c'était bien ça, et je n'ai vu cette information dans aucun tuto, ou je n'y ai pas prêté attention

    J'ai donc viré la ligne du .htaccess pour avoir la main depuis mon index

    C'est le genre de trucs, tu n'y penses pas et tu peux chercher toute une vie !

    Merci bcp de votre aide, j'aurais jamais pensé à vérifié dans le .htaccess.

    Donc, si j'ai bien compris, pour travailler sereinement entre mon environnement de dev et mon environnement de prod, je joue sur cette donnée pour ne pas avoir ensuite à faire de modifs sans arrêt ?

    => Serveur de prod => Production
    => Serveur de dev => Development

    Une fois que c'est fait, je test mes modifs, plugins... en local, et lorsque je suis sur que tout roule, j'upload sur le serveur ?

    Si j'ai bien compris même, on peut avoir un niveau intermédiaire avec un répertoire de test sur le serveur de prod, mais pas sur le site en prod ?

    Est ce que j'ai saisi l'intérêt de tout ça ?

    Merci de votre aide. C'est sympa, sans vous, c'était la corde

    Pendant que j'y suis, j'ai posté un autre post, sans réponse, peut être que vous aurez un bon conseil :

    ZF pour un cms multilingue et multi-domaines

    Je suis parfaitement capable de coder un tel projet en PHP, mais j'anticipe de devoir travailler dessus à plusieurs, je veux vraiment pouvoir conserver une liberté d'évolution et de dév de plugins à l'avenir, et surtout le développer en MVC, ce que je n'ai pas l'habitude de faire.

    J'ai donc fait le choix de Zend Framework après de longues lectures sur symphony et toute la clique.

    C'est vraiment pas évident d'apprendre à se servir de ce framework quand on n'y est pas habitué, mais ça à l'air vraiment puissant. Je suis sous le charme, même si je dois dire que je rame pas mal.

    Mais je pense que le temps que je perds en apprentissage, je le retrouverais plus tard...

  8. #8
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 497
    Points : 12 600
    Points
    12 600
    Par défaut
    En même temps si cela se trouve dans le fichier .Htaccess c'est qu'il y a une raison, maintenant que tu sais où trouver l'info, respecte les convention de ZF, surtout si tu envisages de travailler à plusieurs sur le même projet...tout le monde sait où se trouve quoi


    et puis une mise au point de temps à autre dans un ménage , assure cette fameuse paix

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 39
    Points : 56
    Points
    56
    Par défaut
    Ben visiblement, tu peux le mettre dans le .htaccess ou dans le fichier d'index non ?

    Je vois pas où est le problème. C'est soit l'un soit l'autre, mais pas les deux...?

  10. #10
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 497
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 497
    Points : 12 600
    Points
    12 600
    Par défaut
    C'est une convention, quand tu génères un projet ZF , l'application le met dans le .Htaccess , maintenant effectivement libre à toi de le mettre où tu veux.

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 39
    Points : 56
    Points
    56
    Par défaut
    OK, merci de tes conseils, c'est clair que je vais respecter les conventions de nommage et autres à la lettre.

    J'ai pas l'habitude de développer en MVC, j'ai quelques notions en POO qu'il faut que j'affine et que ça devienne une habitude.

    Encore merci, parce que c'est le genre de conneries, tu peux chercher quelques nuits avant de trouver.

  12. #12
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Citation Envoyé par MaitrePylos Voir le message
    En même temps si cela se trouve dans le fichier .Htaccess c'est qu'il y a une raison, maintenant que tu sais où trouver l'info, respecte les convention de ZF, surtout si tu envisages de travailler à plusieurs sur le même projet...tout le monde sait où se trouve quoi
    Je suis d'accord sur le côté conventions utiles pour le travail à plusieurs.
    Mais hormis ce point important, j'avoue ne pas comprendre pourquoi Zend préfère fixer une variable d'environnement plutôt que de le faire directement dans index.php
    et puis une mise au point de temps à autre dans un ménage , assure cette fameuse paix
    Va dire ça à ma femme...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Configurer le bon environnement de développement
    Par aito31 dans le forum NetBeans
    Réponses: 1
    Dernier message: 13/10/2009, 12h08
  2. Configuration de l'environnement Microsoft Visual Studio 2008
    Par PannetierJer dans le forum Visual Studio
    Réponses: 0
    Dernier message: 15/06/2009, 17h43
  3. session_start et configuration de l'environnement
    Par snaxisnake dans le forum Langage
    Réponses: 2
    Dernier message: 09/01/2008, 18h31
  4. [Oracle] Configuration de l'environnement
    Par dauphin34000 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 02/03/2007, 21h38
  5. [Débutant(e)] [Configuration] variables d'environnement
    Par ENIT-Info dans le forum Tomcat et TomEE
    Réponses: 11
    Dernier message: 25/02/2005, 15h45

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