Invité | Migration PHP 5.4/ 5.5 vers PHP 5.6 ou 7 |
1 #1 |
---|---|---|
FantômeInvité
|
Bonjour,
Dans mon boulot, j'ai à ma charge l'entretien une chiée de sites web codés en PHP (5.4 et 5.5), et comme ces versions ne sont plus maintenues... mon admin serveur me fait dire qu'en 2017 c'est l'heure de la... de la migration, bien sûr ! Truc funky : aucun des sites n'est architecturé autour d'un framework. Aucun des sites n'est testé (pas de framework de test, pas d'automatisation de test, pas de test unitaire, pas de test tout court, rien). Donc... je flippe un peu. Surtout que mon admin serveur est pas trop chaud pour une migration vers PHP 5.6. Il veut imposer PHP 7. Les relations bizarres que ma boîte entretient avec cet admin serveur mises à part... Il faudra bien que je les fasses ces dizaines de migrations. Ma question est la suivante : Avez-vous connaissance d'un outil d'audit syntaxique qui puisse me dire quelles parties de mon code vont merder sous telle ou telle version ? À l'aide ! S'il vous plaît !
Contribution le : 17/02/2017 12:18
|
|
Signaler |
Adr1enb | 1 #2 |
|
---|---|---|
La loi c'est moi
Inscrit: 19/04/2008 16:29
Post(s): 8776
Karma: 2423 |
A part tester toutes les parties du site et scruter les logs d'erreur et warning PHP..
Contribution le : 17/02/2017 13:07
|
|
Signaler |
Skity | 1 #3 |
|
---|---|---|
Je masterise !
Inscrit: 29/12/2013 23:48
Post(s): 2024
Karma: 521 |
Entre 5.4 et 7, à part si tes sites utilisent des spécificités très profondes de PHP, je pense pas que tu auras de gros problèmes par contre tu risques d'avoir peut être des "Notice: ... Depreciated" dans les logs.
Mais c'est vrai que, pareil, je serais curieux de voir si il est possible d'avoir un outil qui scanne les fonctions utilisées et si elles sont dépreciated
Contribution le : 17/02/2017 13:19
|
|
Signaler |
Koreus | 1 #4 |
|
---|---|---|
Webhamster
Inscrit: 03/07/2002 23:58
Post(s): 75337
Karma: 36947 |
@Kevsler J'ai passé le site y a pas longtemps de PHP 5.3 à PHP 5.6 sans trop de problème.
Tu risques d'avoir des warning car les scripts utilisent des functions obsolètes (deprecated) mais ce n'est pas dramatique. Il faut juste vérifier que les erreurs ne s'affichent pas directement sur les pages. Par contre PHP 7, c'est un peu plus problématique car mysql n'est plus supporté, il faut utiliser mysqli (avec le i à la fin) Pour un outil qui détecte les incompatibilités, il y a ça : https://github.com/etsy/phan (je n'ai pas encore testé) Vu ici : http://engineering.dailymotion.com/php-7-deployment-at-dailymotion/
Contribution le : 17/02/2017 16:56
|
|
_________________
|
||
Signaler |
Invité | 0 #5 |
|
---|---|---|
FantômeInvité
|
Merci les gars ! Le code sur lequel je bosse date de 2005. Je croise les doigts pour n'avoir que les fonctions mysql_ à rafraichir (soit mysqli soit PDO... PDO j'aime bien pour le bindValue).
@Koreus je vais regarder ça... Merci.
Contribution le : 17/02/2017 17:10
|
|
Signaler |
Wiliwilliam | 0 #6 |
|
---|---|---|
La loi c'est moi
Inscrit: 07/04/2012 19:19
Post(s): 38209
Karma: 18936 |
@Koreus ça a flingué une librairie que j'utilisais pour minecraft tout de même (xx.rcon.php)
Contribution le : 17/02/2017 17:17
|
|
_________________
>> Récompenses si tu passes en article << |
||
Signaler |
Arsenick | 0 #7 |
|
---|---|---|
J'aime glander ici
Inscrit: 13/12/2006 00:12
Post(s): 6493
Karma: 1039 |
@Kevsler demande un serveur de réplication de l'actuel et test la maj, tu saura tout de suite si ça passe...
No risk no fun
Contribution le : 17/02/2017 23:10
|
|
Signaler |
Invité | 0 #8 |
|
---|---|---|
FantômeInvité
|
@Arsenick Ça c'est déjà fait... En regardant à nouveau mon code ce matin... j'me dis que c'est vraiment d'la merde
Contribution le : 20/02/2017 09:53
|
|
Signaler |
AshySlashy | 1 #9 |
|
---|---|---|
J'aime glander ici
Inscrit: 05/04/2007 11:48
Post(s): 8201
Karma: 1358 |
D'abord, toutes mes condoléances.
T'as pensé à chiffrer l'audit de code et les corrections, et envoyé ça à qui de droit? Les "admin-qui-décident-des-migrations" font souvent marche arrière quand leur boss demande de justifier le coup exorbitant de la montée en version d'un truc qui marchait très bien sur l'ancienne archi Edit: un tuto ici https://www.nerdery.com/blog/code-compatible-php-5-4-5-5 Apparemment PHP CodeSniffer et son plugin PHPCompatibility devraient sortir des données utilisables pour estimer le boulot.
Contribution le : 20/02/2017 12:57
|
|
Signaler |
Arsenick | 1 #10 |
|
---|---|---|
J'aime glander ici
Inscrit: 13/12/2006 00:12
Post(s): 6493
Karma: 1039 |
@Kevsler Courage ^^
Contribution le : 21/02/2017 19:01
|
|
Signaler |
Invité | 2 #11 |
|
---|---|---|
FantômeInvité
|
J'repasse ici pour vous remercier, tous. Pour votre aide et votre soutien. J'ai découvert pas mal de petites pépites en auditant les produits je dois migrer... Et limite la 7.0 c'est pas possible en fait. Sinon c'est plus une migration c'est un recodage.
Donc merci ! Merci ! Karma pour tout l'monde !
Contribution le : 23/02/2017 09:35
|
|
Signaler |
mahnmut | 1 #12 |
|
---|---|---|
Je suis accro
Inscrit: 08/05/2014 11:48
Post(s): 1938
Karma: 586 |
Ca pourra toujours interesser quelques uns parmis vous : phpstan
PHPStan focuses on finding errors in your code without actually running it. It catches whole classes of bugs even before you write tests for the code.
Contribution le : 23/02/2017 17:34
|
|
Signaler |