Jump to content
  • 0
ecreatures

Api Php Et Versions Moderne De Php

Question

Bonjour

 

 

Vu que l'API FileMaker PHP ne supporte que des versions antiques de PHP, 5.3 ou moins qu'est ce que vous conseillez si le reste de ma solution web doit migrer vers du 5.6?
Changer d'API, j'ai vu qu'il y en avait un certain nombre sur Github?

Corriger l'actuelle pour eviter tous les warnings?

Share this post


Link to post
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Cette API est déja en prod depuis 2 ans mais elle ne fonctionne pas avec des versions modernes de PHP. Utiliser des vieilles versions de PHP est impossible (et risqué) sur des hebergements mutualisés.

Il y a beaucoup de job pour nettoyer tous les warning 'deprecated'

 

Quitte a bidouiller, je vais le faire sur des versions non officielles qui ont des chances d'etre mieux codées que celle de Filemaker qui fait rire (en plus des bugs). Merci quand meme pour ton intervention.

Share this post


Link to post
Share on other sites
  • 0

Je m'attendais à voir une réponse de Romain : c'est l'auteur de ce qui me semble être un des portages (le seul ?). Mais j'avoue ne pas avoir regardé en détail sa contrib sur github par manque de temps, car cela m'intéresse aussi.

 

Yvan

Share this post


Link to post
Share on other sites
  • 0

Hein quoi ? Qui me parle ?!?

 

Effectivement, même si je comprend la position de Sburesi, je vais prêcher pour ma paroisse, ayant moi même opté pour une réécriture.

Il faut quand même admettre que cet API n'a pas été mis à jour depuis plusieurs versions (de PHP comme de FileMaker) et qu'il était quand même déjà sacrément archaïque à la base !

 

"Masquer les erreurs" c'est comme cacher la poussière sous le tapis, ca fini toujours par nous jouer des tours et fait baisser la qualité du code. Ce n'est pas pour rien si les frameworks sont de moins en moins permissifs à ce niveau (au point de rendre l'API inutilisable)

 

Quelle que soit la solution choisie (correction ou utilisation d'une autre API), l'essentiel est de conserver un maximum la compatibilité avec l'API original à mon sens. Cela permet de facilité la migration des projets existants et puis, sait on jamais, peut-être qu'un jour ils nous sortirons une version plus moderne ! 

 

Pour ma part j'ai opté pour une modernisation de l'existant en partant des sources afin de maximiser la compatibilité et de mieux comprendre aussi certains concepts. Cela demande quand même pas mal de temps entre la "désobfuscation" du code et la modernisation du système de classes, documentation des fonctions pour l'auto-complétion...

 

Si cela t'intéresse, tu trouveras mon travail sur github (https://github.com/airmoi/FileMaker)

Le package peut être installé/mis à jour via composer ce qui facilite la maintenance et l'intégration dans les frameworks récents et populaires tels que Laravel, Symfony , Yii... N'hésites pas à la tester/forker, tout commentaire/idée d'évolution est le bienvenue !

Je n'ai pas fini la documentation, mais tu trouveras un fichier de test dans le dépôt qui sert aussi d'exemple d'utilisation de toutes les fonctions.

 

Je l'utilise quotidiennement dans mes projets et le fait évolué régulièrement pour garantir sa stabilité. La seul dérogation accordée à la compatibilité avec l'API "officiel" c'est le remplacement de cet horrible système de gestion des erreurs par un système d'exceptions.

 

Testé et éprouvé sur PHP 5.6 et 7

 

Romain

Share this post


Link to post
Share on other sites
  • 0

Merci Romain, je vais m'atteler rapidement a ca sur un projet test. Super d'avoir mis ce gros boulot sur github. Je reviendrai bien sur avec mes commentaires sur ce fil.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...