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 :

Zend Framework 2.0 (2.0.0dev1)


Sujet :

Zend Framework PHP

  1. #1
    Membre confirmé
    Avatar de Jcpan
    Inscrit en
    Août 2008
    Messages
    542
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 542
    Points : 475
    Points
    475
    Par défaut Zend Framework 2.0 (2.0.0dev1)
    Zend Framework 2.0 (2.0.0dev1)


    l'équipe de Zend Framework a ajouté la premiere version du développement de Zend Framework 2.0 (2.0.0dev1). Il est immédiatement téléchargeable à partir des serveurs Zend Framework:

    http://framework.zend.com/releases/Z...-2.0.0dev1.zip

    http://framework.zend.com/releases/Z...0.0dev1.tar.gz

    NOTE!
    Cette version n'est pas considéré comme de qualité pour la production, et est diffusée uniquement pour fournir un aperçu du développement à des fins d'expérimentation et de recherche, donc à utiliser à vos risques et périls.


    CARACTÉRISTIQUES:

    * Suppression de toutes les déclarations require_once.

    * La migration vers les espaces de noms.

    * Refactoring de la suite de tests, y compris:
    • Suppression de tous les "AllTests.php" fichiers.
    • Enlèvement de classes de tests liés.
    • Refactoring limitée pour déplacer des classes d'aide dans leurs propres fichiers.
    • Refactoring des tests conditionnels.


    * Réécriture de Zend \ Session de fond en comble.
    • Cette création nécessaire d'un nouveau composant, Zend \ SignalSlot, pour le traitement des observateurs et la création de chaînes de filtre.

    * Ajout d'un nouvel espace de noms Zend \ stdlib pour les interfaces et les classes utilitaires.
    • en particulier, ils ont ajouté des extensions de SplQueue, SplStack, et créer SplPriorityQueue sérialisable


    source

  2. #2
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    Merci pour cette information.
    J'ai entendu que l'autoload est devenue très lente sur cette nouvelle version. quelqu'un a t'il expérimenté ?
    Développeur | Zend Certified Engineer

    Étapes Pour mieux se servir du forum:
    1. Commencez par lire les cours et tutoriels ;
    2. Faites une recherche;
    3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles;

    Nix>_Rien n'est plus pratique que la théorie

  3. #3
    Membre confirmé
    Avatar de Jcpan
    Inscrit en
    Août 2008
    Messages
    542
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 542
    Points : 475
    Points
    475
    Par défaut
    premier essai ça donne ça

    Warning: require_once(Zend/Application.php) [function.require-once]: failed to open stream: No such file or directory in C:\xampp\htdocs\PhpProject7\public\index.php on line 24

    Fatal error: require_once() [function.require]: Failed opening required 'Zend/Application.php' (include_path='C:\xampp\htdocs\PhpProject7\public/../library/doctrine;C:\xampp\htdocs\PhpProject7\public/models;C:\xampp\htdocs\PhpProject7\public/models/generated;C:\xampp\htdocs\PhpProject7\library;.;\xampp\php\PEAR') in C:\xampp\htdocs\PhpProject7\public\index.php on line 24

    Microsoft Windows XP [version 5.1.2600]
    (C) Copyright 1985-2001 Microsoft Corp.

    C:\xampp\htdocs>zf create project quickstart

    Warning: include_once(NetBeansCommandsProvider.php): failed to open stream: No s
    uch file or directory in C:\xampp\php\PEAR\Zend\Loader.php on line 153

    Warning: include_once(): Failed opening 'NetBeansCommandsProvider.php' for inclu
    sion (include_path='.;\xampp\php\PEAR') in C:\xampp\php\PEAR\Zend\Loader.php on
    line 153

    Fatal error: Uncaught exception 'Zend\Loader\ClassNotFoundException' with messag
    e 'File "NetBeansCommandsProvider.php" does not exist or class "NetBeansCommands
    Provider" was not found in the file' in C:\xampp\php\PEAR\Zend\Loader.php:106
    Stack trace:
    #0 C:\xampp\php\PEAR\Zend\Tool\Framework\Loader\BasicLoader.php(105): Zend\Loade
    r::loadClass('NetBeansCommand...')
    #1 C:\xampp\php\PEAR\Zend\Tool\Framework\Client\AbstractClient.php(127): Zend\To
    ol\Framework\Loader\BasicLoader->load()
    #2 C:\xampp\php\PEAR\Zend\Tool\Framework\Client\AbstractClient.php(223): Zend\To
    ol\Framework\Client\AbstractClient->initialize()
    #3 C:\xampp\php\zf.php(611): Zend\Tool\Framework\Client\AbstractClient->dispatch
    ()
    #4 C:\xampp\php\zf.php(118): ZF->_runTool()
    #5 C:\xampp\php\zf.php(75): ZF->run()
    #6 C:\xampp\php\zf.php(635): ZF::main()
    #7 {main}
    thrown in C:\xampp\php\PEAR\Zend\Loader.php on line 106
    C:\xampp\htdocs>

    à parement il n' y a de possibilité de migrer de 1.10 vers 2.0, le framework a été cassé en profondeur. j'ai pas trouvé comment faire un demarage rapide avec cette version.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    118
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2010
    Messages : 118
    Points : 184
    Points
    184
    Par défaut
    Bonjour,

    En lisant le tutoriel ci joint ici

    J'ai moi même fait un essai, et j'ai dû modifier le code de mon index.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    ...
    // Composant Zend pour le démarage de l'application
    require_once 'Zend/Application/Application.php';
    use Zend\Application\Application;
     
    // Création et configuration de l'application 
    $application = new Application (
        APPLICATION_ENV, 
        APPLICATION_PATH . '/configs/application.ini'
    );
     
    // Démare l'application
    $application->bootstrap()->run();
    Après cela bloc à nouveau
    Warning: include_once(Zend\Application\Bootstrap\Bootstrap.php) [function.include-once]: failed to open stream: No such file or directory in F:\wamp\www\library\ZendFramework\ZendFramework-2.0.0\library\Zend\Loader.php on line 153
    Apprendre c'est se faciliter la vie !
    http://e-tuto.fr

  5. #5
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    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 496
    Points : 12 596
    Points
    12 596
    Par défaut
    Bonjour,

    Les outils Zend ne sont pas encore au point

    J'ai donc généré un nouveau projet avec les anciens outils et mis les librairies de Zend 2.0.

    Il vous faut bien sûr PHP5.3

    par défaut, j'ai pour habitude de mettre le index.php et le .Htaccess dans la racine de mon projet (précision pour les chemins).

    Ensuite dans votre index.php écrivez ceci :

    Index.php
    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
     
    <?php
    // Set the initial include_path. You may need to change this to ensure that
    // Zend Framework is in the include_path; additionally, for performance
    // reasons, it's best to move this to your web server configuration or php.ini
    // for production.
    set_include_path(implode(PATH_SEPARATOR, array(
        realpath(dirname(__FILE__) . '/library/'),
        get_include_path(),
    )));
     
    // Define path to application directory
    defined('APPLICATION_PATH')
        || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/application'));
     
    // Define path to application directory
    defined('APPLICATION_EID')
        || define('APPLICATION_EID', realpath(dirname(__FILE__) . '/'));
     
     
    // Define application environment
    defined('APPLICATION_ENV')
        || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
     
    /** Zend_Application */
    require_once 'Zend/Application/Application.php';
    use Zend\Application\Application;
     
     
    // Create application, bootstrap, and run
    $application = new Application(
        APPLICATION_ENV,
        APPLICATION_PATH . '/configs/application.ini'
    );
     
    $application->bootstrap();
    $application->run();

    ensuite il vous faut modifier le fichier Application/Bootstrap.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    class Bootstrap extends Zend\Application\Bootstrap
    {
    }

    et pour terminer votre indexController.php

    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
     
    <?php
    use Zend\Controller\Action;
    class IndexController extends Action
    {
     
        public function init()
        {
            /* Initialize action controller here */
        }
     
        public function indexAction()
        {
            // action body
        }
     
     
    }

    Vous devriez avoir un début de projet

  6. #6
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    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 496
    Points : 12 596
    Points
    12 596
    Par défaut
    Tant que j'y suis, voici le errorController
    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
    48
    49
    50
    51
    52
     
    <?php
    use Zend\Controller\Action;
    use Zend\Controller\Plugin\ErrorHandler;
    class ErrorController extends Action
    {
     
        public function errorAction()
        {
            $errors = $this->_getParam('error_handler');
     
            switch ($errors->type) {
                case ErrorHandler::EXCEPTION_NO_ROUTE:
                case ErrorHandler::EXCEPTION_NO_CONTROLLER:
                case ErrorHandler::EXCEPTION_NO_ACTION:
     
                    // 404 error -- controller or action not found
                    $this->getResponse()->setHttpResponseCode(404);
                    $this->view->message = 'Page not found';
                    break;
                default:
                    // application error
                    $this->getResponse()->setHttpResponseCode(500);
                    $this->view->message = 'Application error';
                    break;
            }
     
            // Log exception, if logger available
            if ($log = $this->getLog()) {
                $log->crit($this->view->message, $errors->exception);
            }
     
            // conditionally display exceptions
            if ($this->getInvokeArg('displayExceptions') == true) {
                $this->view->exception = $errors->exception;
            }
     
            $this->view->request   = $errors->request;
        }
     
        public function getLog()
        {
            $bootstrap = $this->getInvokeArg('bootstrap');
            if (!$bootstrap->hasPluginResource('Log')) {
                return false;
            }
            $log = $bootstrap->getResource('Log');
            return $log;
        }
     
     
    }

  7. #7
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    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 496
    Points : 12 596
    Points
    12 596
    Par défaut
    En même temps un fois que c'est acquis, cela reste du pareil au même

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?php
     
    class Bootstrap extends Zend\Application\Bootstrap {
     
        public function _initView() {
            $view = new Zend\View\View();
            $view->doctype('XHTML1_STRICT');
            $view->headMeta()->appendHttpEquiv('Content-Type', 'text/html; charset=utf-8');
            return $view;
        }
     
    }

  8. #8
    Membre confirmé
    Avatar de FERDIKAM
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2005
    Messages
    123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2005
    Messages : 123
    Points : 616
    Points
    616
    Par défaut
    Si je comprends bien c'est de l'inclusion manuelle. Pas de chargement automatique des classes.

  9. #9
    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 726
    Points
    10 726
    Par défaut
    Citation Envoyé par FERDIKAM Voir le message
    Si je comprends bien c'est de l'inclusion manuelle. Pas de chargement automatique des classes.
    tout est automatiquement au contraire, comme c'est du namespace spl_autoload ca direct le chercher

  10. #10
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Points : 171
    Points
    171
    Par défaut
    Citation Envoyé par MaitrePylos Voir le message
    Bonjour,

    J'ai donc généré un nouveau projet avec les anciens outils et mis les librairies de Zend 2.0.
    Bonjour, j'ai suivi le même tutoriel, et donc la même erreur.
    Je souhaite reprendre vos indications, mais qu'appelez-vous les anciens outils ? et pour les librairies zend 2.0, il s'agit des librairies présentes dans le framework ? je les laisse à cet endroit ?

    dans mon cas, j'a le framework installé sous "C:\Program Files\ZendFrameworkCli" et mon appli est sous "C:\AppServ\www\zfProject"

    Est-ce que je peux simplement prendre le contenu du "index.php" présent dans ce post et le créer à racine du projet (et non plus dans public) ?
    Merci.

  11. #11
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 496
    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 496
    Points : 12 596
    Points
    12 596
    Par défaut
    Par ancien outils, je veux dire que j'ai générer mon projet avec la librairie < à 2.0 et puis j'ai remplacé le coeur du Framework par la version 2.0

Discussions similaires

  1. Votre avis sur Zend Framework ?
    Par __fabrice dans le forum Zend Framework
    Réponses: 79
    Dernier message: 28/11/2009, 19h09
  2. Zend Framework et URL Rewriting
    Par ToxiZz dans le forum MVC
    Réponses: 1
    Dernier message: 19/04/2006, 12h25
  3. [PHP5] PEAR vs ZEND Framework
    Par wdionysos dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 04/04/2006, 10h51
  4. Réponses: 3
    Dernier message: 02/04/2006, 20h38

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