Equivalent des directives de compilation #if du langage C

Eléphanteau du PHP | 10 Messages

23 mai 2006, 17:54

Bonjour,

Quasiment tout est dit dans le sujet.

Existe-t-il en PHP des directives permettant d'interpréter le code en fonction d'un argument externe comme par exemple la version de PHP ??

Merci d'avance de vos réponses.

Eléphant du PHP | 493 Messages

23 mai 2006, 18:08

Ce n'est pas des directives à proprement parler mais tu peux faire un script du genre :
if( ! check_version( PHP_VERSION, "4.1.0" ) )
{
    ...
}
else
{
    ...
}
EDIT: tu peux aussi générer le code de ta page avec de telles conditions puis effectuer un eval du code obtenu. Alors à ce moment là, oui tu as des directives de compilation :P

Eléphanteau du PHP | 10 Messages

23 mai 2006, 18:21

Ca veut dire que si je veux mettre en oeuvre les interfaces de PHP 5 dans un programme PHP 4 et garder la compatibilité avec les deux version, il faudrait que j'encapsule chacune des class existante avec un test sur PHP 4 et que je les duplique avec les modifications qui conviennent pour utiliser PHP 5?

Un travail giganteste..................... :(

Quelqu'un aurait une autre idée ???

Eléphant du PHP | 493 Messages

23 mai 2006, 18:27

PHP4 et PHP5 ne sont pas fait pour cohabiter :)

Eléphanteau du PHP | 10 Messages

23 mai 2006, 18:34

Les deux versions du langage non, mais les programmes réalisés eux, dans certains cas, doivent pouvoir fonctionner avec ces deux langages
:wink:

Eléphant du PHP | 493 Messages

23 mai 2006, 18:45

Le plus simple est de proposer 2 versions, une php4, l'autre php5. Afin de limiter le travail tu pourrais découper ton script en 3 parties. Le code générique, le PHP4 et le PHP5. Tu includes ensuite dans ton code générique soit le fichier page_x.php4, soit page_x.php5.

Invité
Invité n'ayant pas de compte PHPfrance

23 mai 2006, 19:00

merci pour ces conseils qui me seront précieux =;
Sinon j'allais dans le mur ](*,)

Bonne soirée

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

23 mai 2006, 20:09

Certains paramètres du php.ini peuvent aider pour la compatibilité (Zend Engine, toussa) quand tu fais tourner un script PHP4 sous PHP5.

Quelques éléments en plus : Cohabitation PHP4 et PHP5
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.