SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
INSSET




             PHP 5.3
      Une étape importante
     sur la route vers PHP 6

                 
                       INSSET ­St Quentin ­ 20/02/08
Qui parle ?

    ●
        Jean­Marc Fontaine
    ●
        Développeur PHP depuis 7 ans
    ●
        Ex­trésorier et membre actif de l'AFUP
    ●
        Créateur de Kanopée




                               
                                         INSSET ­St Quentin ­ 20/02/08
PHP 5.3



        
              INSSET ­St Quentin ­ 20/02/08
Namespaces (1)

    ●
        Évite le syndrôme PEAR : 
        HTML_QuickForm_Renderer_Array




                           
                                   INSSET ­St Quentin ­ 20/02/08
Namespaces (2)




                  
                     INSSET ­St Quentin ­ 20/02/08
mysqlnd (1)

    ●
        Remplacement de libmysql
    ●
        Distribué sous licence PHP
    ●
        Librairie et non pas extension




                                
                                         INSSET ­St Quentin ­ 20/02/08
mysqlnd (2)

    ●
        Meilleure intégration avec le Zend Engine
    ●
        Respect de la directive memory_limit




                               
                                         INSSET ­St Quentin ­ 20/02/08
mysqlnd (3)

    ●
        Diminution de l'empreinte mémoire grâce aux 
        enregistrements en lecture seule




                              
                                        INSSET ­St Quentin ­ 20/02/08
mysqlnd (4)

    ●
        Utilisation des flux PHP
    ●
        Impossibilité pour le moment d'y avoir accès




                                
                                         INSSET ­St Quentin ­ 20/02/08
mysqlnd (5)

    ●
        Retour des connexions persistantes
    ●
        Données statistiques
    ●
        Cache de requêtes côté client




                                
                                        INSSET ­St Quentin ­ 20/02/08
nowdocs




           
              INSSET ­St Quentin ­ 20/02/08
Late static binding (1)




                    
                          INSSET ­St Quentin ­ 20/02/08
Late static binding (2)




                    
                          INSSET ­St Quentin ­ 20/02/08
Appel statique variable




                   
                          INSSET ­St Quentin ­ 20/02/08
__callStatic()




                  
                     INSSET ­St Quentin ­ 20/02/08
Modification des niveaux d'erreur

    ●
        Introduction de E_DEPRECATED
    ●
        Incorporation de E_STRICT dans E_ALL




                             
                                       INSSET ­St Quentin ­ 20/02/08
Divers (1)

    ●
        Algorithme Diffie­Hellman disponible
    ●
        Profilage XSLT
    ●
        Amélioration de la ligne de commande
    ●
        Amélioration de SPL
    ●
        Support de Sqlite 3
    ●
        Amélioration du support des fichiers ini

                                
                                          INSSET ­St Quentin ­ 20/02/08
Divers (2)

    ●
        Incorporation de l'extension fileinfo au noyau en 
        remplacement de mime_magic
    ●
        activation de la fonction dl() uniquement à la 
        demande du SAPI




                                
                                           INSSET ­St Quentin ­ 20/02/08
C'est pour quand ?

    ●
        le code est déjà disponible en version alpha
    ●
        sortie probablement au 1er semestre 2008




                               
                                         INSSET ­St Quentin ­ 20/02/08
PHP 6



       
            INSSET ­St Quentin ­ 20/02/08
Suppressions

    ●
        ereg
    ●
        safe_mode
    ●
        register_globals
    ●
        magic_quotes
    ●
        ze1_compatibility
    ●
        register_long_variables

                               
                                  INSSET ­St Quentin ­ 20/02/08
Améliorations

    ●
        __autoload()
    ●
        output_buffering totalement réécrit
    ●
        lazy loading des supers globales
    ●
        support de finally




                                
                                           INSSET ­St Quentin ­ 20/02/08
Unicode (1)

    ●
        Projet de fond mené par Andrei Zmeivski et 
        Sara Golemon
    ●
        Basé sur ICU d'IBM
    ●
        A des répercutions à tous les niveaux  :
        –   code PHP
        –   chaînes de caractères
        –   tris, manipulations
                                     
                                          INSSET ­St Quentin ­ 20/02/08
Unicode (2)




               
                  INSSET ­St Quentin ­ 20/02/08
TextIterator

    ●
        Permet de découper un texte en :
        –   octets
        –   caractères
        –   mots
        –   phrases entières




                                
                                           INSSET ­St Quentin ­ 20/02/08
Goto




        
           INSSET ­St Quentin ­ 20/02/08
APC

    ●
        inclus dans la distribution
    ●
        désactivé par défaut




                                 
                                      INSSET ­St Quentin ­ 20/02/08
Nouvelles fonctions

    ●
        char_*            ●
                              unicode
    ●
        collator_*        ●
                              strtotitle
    ●
        gc_*              ●
                              var_inspect
    ●
        locale_*          ●
                              str_getcsv
    ●
        mhash_*



                       
                                      INSSET ­St Quentin ­ 20/02/08
Cure d'amaigrissement



       Version   Nb extensions       Taille             Mémoire
    4.4.8                   43                8 Mo                13 Ko
    5.3.0                   65           24 Mo                    50 Ko
    6.0.0                   43           19 Mo                    53 Ko




                                  
                                                 INSSET ­St Quentin ­ 20/02/08
C'est pour quand ?

    ●
        le code est déjà disponible en version alpha
    ●
        60 % des fonctions supportent Unicode
    ●
        sortie probablement au 1er semestre 2009




                               
                                         INSSET ­St Quentin ­ 20/02/08
Des questions ?

    www.kanopee.net
    jmf@kanopee.net


    Présentation disponible sur
    www.kanopee.net/conferences/



                             
                                   INSSET ­St Quentin ­ 20/02/08

Mais conteúdo relacionado

Mais de Jean-Marc Fontaine

Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012Jean-Marc Fontaine
 
Revue de code - PHP Tour Nantes 2012
Revue de code - PHP Tour Nantes 2012Revue de code - PHP Tour Nantes 2012
Revue de code - PHP Tour Nantes 2012Jean-Marc Fontaine
 
Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012Jean-Marc Fontaine
 
Gérer ses environnements de développement avec Vagrant - RMLL 2012
Gérer ses environnements de développement avec Vagrant - RMLL 2012Gérer ses environnements de développement avec Vagrant - RMLL 2012
Gérer ses environnements de développement avec Vagrant - RMLL 2012Jean-Marc Fontaine
 
La qualité au delà du code - Forum PHP 2012
La qualité au delà du code - Forum PHP 2012La qualité au delà du code - Forum PHP 2012
La qualité au delà du code - Forum PHP 2012Jean-Marc Fontaine
 
Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012Jean-Marc Fontaine
 
Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012Jean-Marc Fontaine
 
La qualité au-delà du code - ConFoo 2012
La qualité au-delà du code - ConFoo 2012La qualité au-delà du code - ConFoo 2012
La qualité au-delà du code - ConFoo 2012Jean-Marc Fontaine
 
Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011Jean-Marc Fontaine
 
Reprise sur incident - RMLL 2011
Reprise sur incident - RMLL 2011Reprise sur incident - RMLL 2011
Reprise sur incident - RMLL 2011Jean-Marc Fontaine
 
Organiser efficacement son dépôt de code - RMLL 2011
Organiser efficacement son dépôt de code - RMLL 2011Organiser efficacement son dépôt de code - RMLL 2011
Organiser efficacement son dépôt de code - RMLL 2011Jean-Marc Fontaine
 
Maintenir du code historique - RMLL 2011
Maintenir du code historique - RMLL 2011Maintenir du code historique - RMLL 2011
Maintenir du code historique - RMLL 2011Jean-Marc Fontaine
 
Comment monter son business grâce à l'Open Source ?
Comment monter son business grâce à l'Open Source ?Comment monter son business grâce à l'Open Source ?
Comment monter son business grâce à l'Open Source ?Jean-Marc Fontaine
 
Industrialiser ses développements PHP - RMLL 2010
Industrialiser ses développements PHP - RMLL 2010Industrialiser ses développements PHP - RMLL 2010
Industrialiser ses développements PHP - RMLL 2010Jean-Marc Fontaine
 
Revues de code - Forum PHP 2010
Revues de code - Forum PHP 2010Revues de code - Forum PHP 2010
Revues de code - Forum PHP 2010Jean-Marc Fontaine
 
Industrialisation de PHP - Be Zend 2010
Industrialisation de PHP - Be Zend 2010Industrialisation de PHP - Be Zend 2010
Industrialisation de PHP - Be Zend 2010Jean-Marc Fontaine
 
Solutions Linux 2010 - Maîtrise du développement PHP
Solutions Linux 2010 - Maîtrise du développement PHPSolutions Linux 2010 - Maîtrise du développement PHP
Solutions Linux 2010 - Maîtrise du développement PHPJean-Marc Fontaine
 
Déboguer une application web avec FirePHP
Déboguer une application web avec FirePHPDéboguer une application web avec FirePHP
Déboguer une application web avec FirePHPJean-Marc Fontaine
 
Utilisation optimale et professionnelle de PHP
Utilisation optimale et professionnelle de PHPUtilisation optimale et professionnelle de PHP
Utilisation optimale et professionnelle de PHPJean-Marc Fontaine
 

Mais de Jean-Marc Fontaine (19)

Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
Gérer ses environnements de développement avec vagrant - PHP Tour Nantes 2012
 
Revue de code - PHP Tour Nantes 2012
Revue de code - PHP Tour Nantes 2012Revue de code - PHP Tour Nantes 2012
Revue de code - PHP Tour Nantes 2012
 
Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012Gestion des dépendances dans un projet PHP - RMLL 2012
Gestion des dépendances dans un projet PHP - RMLL 2012
 
Gérer ses environnements de développement avec Vagrant - RMLL 2012
Gérer ses environnements de développement avec Vagrant - RMLL 2012Gérer ses environnements de développement avec Vagrant - RMLL 2012
Gérer ses environnements de développement avec Vagrant - RMLL 2012
 
La qualité au delà du code - Forum PHP 2012
La qualité au delà du code - Forum PHP 2012La qualité au delà du code - Forum PHP 2012
La qualité au delà du code - Forum PHP 2012
 
Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012
 
Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012Reprise sur incident - ConFoo 2012
Reprise sur incident - ConFoo 2012
 
La qualité au-delà du code - ConFoo 2012
La qualité au-delà du code - ConFoo 2012La qualité au-delà du code - ConFoo 2012
La qualité au-delà du code - ConFoo 2012
 
Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011Industrialiser PHP - Open World Forum 2011
Industrialiser PHP - Open World Forum 2011
 
Reprise sur incident - RMLL 2011
Reprise sur incident - RMLL 2011Reprise sur incident - RMLL 2011
Reprise sur incident - RMLL 2011
 
Organiser efficacement son dépôt de code - RMLL 2011
Organiser efficacement son dépôt de code - RMLL 2011Organiser efficacement son dépôt de code - RMLL 2011
Organiser efficacement son dépôt de code - RMLL 2011
 
Maintenir du code historique - RMLL 2011
Maintenir du code historique - RMLL 2011Maintenir du code historique - RMLL 2011
Maintenir du code historique - RMLL 2011
 
Comment monter son business grâce à l'Open Source ?
Comment monter son business grâce à l'Open Source ?Comment monter son business grâce à l'Open Source ?
Comment monter son business grâce à l'Open Source ?
 
Industrialiser ses développements PHP - RMLL 2010
Industrialiser ses développements PHP - RMLL 2010Industrialiser ses développements PHP - RMLL 2010
Industrialiser ses développements PHP - RMLL 2010
 
Revues de code - Forum PHP 2010
Revues de code - Forum PHP 2010Revues de code - Forum PHP 2010
Revues de code - Forum PHP 2010
 
Industrialisation de PHP - Be Zend 2010
Industrialisation de PHP - Be Zend 2010Industrialisation de PHP - Be Zend 2010
Industrialisation de PHP - Be Zend 2010
 
Solutions Linux 2010 - Maîtrise du développement PHP
Solutions Linux 2010 - Maîtrise du développement PHPSolutions Linux 2010 - Maîtrise du développement PHP
Solutions Linux 2010 - Maîtrise du développement PHP
 
Déboguer une application web avec FirePHP
Déboguer une application web avec FirePHPDéboguer une application web avec FirePHP
Déboguer une application web avec FirePHP
 
Utilisation optimale et professionnelle de PHP
Utilisation optimale et professionnelle de PHPUtilisation optimale et professionnelle de PHP
Utilisation optimale et professionnelle de PHP
 

PHP 5.3 : Une étape importante sur la route vers PHP 6

  • 1. INSSET PHP 5.3 Une étape importante sur la route vers PHP 6     INSSET ­St Quentin ­ 20/02/08
  • 2. Qui parle ? ● Jean­Marc Fontaine ● Développeur PHP depuis 7 ans ● Ex­trésorier et membre actif de l'AFUP ● Créateur de Kanopée     INSSET ­St Quentin ­ 20/02/08
  • 3. PHP 5.3     INSSET ­St Quentin ­ 20/02/08
  • 4. Namespaces (1) ● Évite le syndrôme PEAR :  HTML_QuickForm_Renderer_Array     INSSET ­St Quentin ­ 20/02/08
  • 5. Namespaces (2)     INSSET ­St Quentin ­ 20/02/08
  • 6. mysqlnd (1) ● Remplacement de libmysql ● Distribué sous licence PHP ● Librairie et non pas extension     INSSET ­St Quentin ­ 20/02/08
  • 7. mysqlnd (2) ● Meilleure intégration avec le Zend Engine ● Respect de la directive memory_limit     INSSET ­St Quentin ­ 20/02/08
  • 8. mysqlnd (3) ● Diminution de l'empreinte mémoire grâce aux  enregistrements en lecture seule     INSSET ­St Quentin ­ 20/02/08
  • 9. mysqlnd (4) ● Utilisation des flux PHP ● Impossibilité pour le moment d'y avoir accès     INSSET ­St Quentin ­ 20/02/08
  • 10. mysqlnd (5) ● Retour des connexions persistantes ● Données statistiques ● Cache de requêtes côté client     INSSET ­St Quentin ­ 20/02/08
  • 11. nowdocs     INSSET ­St Quentin ­ 20/02/08
  • 12. Late static binding (1)     INSSET ­St Quentin ­ 20/02/08
  • 13. Late static binding (2)     INSSET ­St Quentin ­ 20/02/08
  • 14. Appel statique variable     INSSET ­St Quentin ­ 20/02/08
  • 15. __callStatic()     INSSET ­St Quentin ­ 20/02/08
  • 16. Modification des niveaux d'erreur ● Introduction de E_DEPRECATED ● Incorporation de E_STRICT dans E_ALL     INSSET ­St Quentin ­ 20/02/08
  • 17. Divers (1) ● Algorithme Diffie­Hellman disponible ● Profilage XSLT ● Amélioration de la ligne de commande ● Amélioration de SPL ● Support de Sqlite 3 ● Amélioration du support des fichiers ini     INSSET ­St Quentin ­ 20/02/08
  • 18. Divers (2) ● Incorporation de l'extension fileinfo au noyau en  remplacement de mime_magic ● activation de la fonction dl() uniquement à la  demande du SAPI     INSSET ­St Quentin ­ 20/02/08
  • 19. C'est pour quand ? ● le code est déjà disponible en version alpha ● sortie probablement au 1er semestre 2008     INSSET ­St Quentin ­ 20/02/08
  • 20. PHP 6     INSSET ­St Quentin ­ 20/02/08
  • 21. Suppressions ● ereg ● safe_mode ● register_globals ● magic_quotes ● ze1_compatibility ● register_long_variables     INSSET ­St Quentin ­ 20/02/08
  • 22. Améliorations ● __autoload() ● output_buffering totalement réécrit ● lazy loading des supers globales ● support de finally     INSSET ­St Quentin ­ 20/02/08
  • 23. Unicode (1) ● Projet de fond mené par Andrei Zmeivski et  Sara Golemon ● Basé sur ICU d'IBM ● A des répercutions à tous les niveaux  : – code PHP – chaînes de caractères – tris, manipulations     INSSET ­St Quentin ­ 20/02/08
  • 24. Unicode (2)     INSSET ­St Quentin ­ 20/02/08
  • 25. TextIterator ● Permet de découper un texte en : – octets – caractères – mots – phrases entières     INSSET ­St Quentin ­ 20/02/08
  • 26. Goto     INSSET ­St Quentin ­ 20/02/08
  • 27. APC ● inclus dans la distribution ● désactivé par défaut     INSSET ­St Quentin ­ 20/02/08
  • 28. Nouvelles fonctions ● char_* ● unicode ● collator_* ● strtotitle ● gc_* ● var_inspect ● locale_* ● str_getcsv ● mhash_*     INSSET ­St Quentin ­ 20/02/08
  • 29. Cure d'amaigrissement Version Nb extensions Taille Mémoire 4.4.8 43 8 Mo 13 Ko 5.3.0 65 24 Mo 50 Ko 6.0.0 43 19 Mo 53 Ko     INSSET ­St Quentin ­ 20/02/08
  • 30. C'est pour quand ? ● le code est déjà disponible en version alpha ● 60 % des fonctions supportent Unicode ● sortie probablement au 1er semestre 2009     INSSET ­St Quentin ­ 20/02/08
  • 31. Des questions ? www.kanopee.net jmf@kanopee.net Présentation disponible sur www.kanopee.net/conferences/     INSSET ­St Quentin ­ 20/02/08