Tout d'abord, la question de l'avenir de l'extension mysql a bien été évoquée sur internals@, la liste de diffusion des développeurs de PHP.
Cependant, tout lecteur un minimum attentif remarquera que la première phrase du message ayant déclenché la rumeur est :
Don't panic! This is not a proposal to add errors or remove this popular extension.
Dans le genre message clair et précis, je pense qu'il n'est pas possible de faire beaucoup mieux, d'autant que l'auteur de la proposition est très explicite dans la suite de son message :
Add notes that refer to it as deprecated
L'auteur propose donc de marquer l'extension comme étant obsolète, ce qui ne signifie pas du tout qu'elle va être supprimée.
Certes, il poursuit ensuite en décrivant une stratégie éducative ayant pour but à encourager les utilisateurs de l'extension mysql
à migrer vers des solutions alternatives, mais encore une fois, cela n'implique pas du tout que l'extension en question sera inutilisable à l'avenir.
D'ailleurs, celui qui connait un tantinet la politique de développement de PHP sait très bien à quoi s'en tenir.
Depuis trop longtemps, les développeurs du langage s'attache à maintenir au maximum une compatibilité maximum entre les différentes versions du langage, quitte à se trimbaler pendant des années des horreurs telles que les magic quotes
.
Cette politique donne lieu depuis des années à des débats houleux à la fois au sein de la communauté des développeurs et celle des utilisateurs, et parfois même entre les deux communautés.
Il est donc très amusant de constater qu'elle n'a pas été prise en compte par ceux qui ont propagé la rumeur et il est donc totalement impensable, en l'état actuel des choses, que l'extension mysql
disparaisse purement et simplement.
Car pour être clair, les développeurs seront très fortement incités à ne plus utiliser l'extension mysql
à l'avenir, et à termes, lorsque les développeurs de PHP auront jugé que la période d'évangélisation aura été suffisante, elle ne sera plus fournie nativement avec le langage.
Cependant, elle continuera alors d'exister la forme d'une extension PECL que ceux qui n'auront pas migré vers mysqli
ou PDO
pourront mettre en œuvre pour faire fonctionner leur code historique, code historique qui leur coûtera certainement plus cher à maintenir qu'une réécriture partielle ou complète du code pour supporter l'une des alternatives proposées, mais c'est un autre débat.
L'extension mysql
de PHP, quoique obsolète à tout point de vue, se porte donc bien et à encore de longues années de vie devant elle, et il est donc inutile de paniquer, même si je recommande à ses utilisateurs d'utiliser dorénavant des extensions plus rapides, plus fiables techniquement et en accord avec les possibilités actuelles de mysql.
7 réactions
1 De stealth35 - 26/07/2011, 13:00
y'a des propositions pour l'avenir de ereg ?
2 De mageekguy - 26/07/2011, 13:16
@stealth35 : C'est obsolète depuis un bon moment.
J'ai vu passer des choses à ce sujet, sans m'y attarder vu que je n'utilise pas cette fonctionnalité, mais je n'ai plus les détails en tête.
Je regarderais à l'occasion.
3 De stealth35 - 26/07/2011, 13:41
Comme le temps est au ménage, je trouve étrange que depuis qu'elle est dépréciée avec la 5.3, qu'on ne puisse même pas la supprimer à la compilation (la seule dans son cas), pour revenir au cas de mysql elle aurai peu être aussi ça place en PECL comme pour sqlite (qui est partie du trunk de la 5.4)
4 De desfrenes - 26/07/2011, 14:16
"Mettons fin aux rumeurs, voici les faits !" Fan d'alien ? Si c'est le cas bienvenue au club.
5 De mageekguy - 26/07/2011, 14:24
@desfrenes : j'attendais de voir si quelqu'un allait réagir ;).
6 De gtraxx - 13/08/2011, 03:16
Cela fait des années que je n'utilise plus cette extension, PDO est vraiment plus pratique et tellement sympathique.
L'extension mysql à toujours été une horreur même si au début ce n'étais pas le cas, toute chose évolue.
Mais bon l’interprétation des gens apportent parfois des réactions stupide dans toute une communauté.
7 De Joko - 21/11/2012, 08:13
J'utilise PDO pour son approche objet et ses nombreuses surcharges dans les frameworks.
Je ne suis pas de ceux qui préfère une lib "par ce qu'elle fait plein de chose en plus" si ces choses ne sont jamais utilisées.
l'extension mysql a été l'une des première lib a être encapsulé dans des objets murs (dataobject de pear entre autre), ne lui crachons pas dessus !