Page 1 sur 1

compiler php

Posté : 01 déc. 2012, 02:48
par Invité
Bonjour à tous,

Je souhaite savoir s'il est possible de compiler un programme PHP à fichiers et répertoires multiples pour en faire un unique fichier exécutable sous linux.
Après quelques heures de lecture, j'ai compris qu'il est possible de compiler du code php, mais ce que je n'arrive pas à comprendre:
puis-je par exemple créer un site avec un cms comme wordpress et le compiler afin de n'avoir qu'un unique fichier pour mon site?

En vous remerciant pour vos réponses.

Re: compiler php

Posté : 01 déc. 2012, 11:39
par moogli
Salut,

Pour ce qui est de "compiler" du code php je t'invite a chercher sur le forum un post de sirakawa sur le sujet.
Il est possible d'utiliser une archive PHAR pour du tout en 1.
Cela nécessite php5.4 et du code prévu pour a la base, ce qui est rarement le cas ;)

Hors mis une facilité de déploiement et limiter la recopie de code il n'y a pas énormément d'intérêt.

Tu peux aussi t'orienter vers des solutions comme zend encoder ou ioncube qui vont réaliser une sorte de compilation mais nécessité obligatoirement une extension propriétaire (zend ou ioncube la) installée sur le serveur client ce qui est rarement possible ;)

@+

Re: compiler php

Posté : 01 déc. 2012, 12:53
par sirakawa
J'avais pensé à ça, mais:
1) en compilant je perds la portabilité de PHP et je m'oblige à produire une version par plateforme, excluant celles que je ne possède pas à moins de disposer d'un cross-compiler.

2) peut-être sur des applications où il ya plus de calcul que d'interaction avec HTML, ça vaudrait le coup. Mais, alors autant développer directement dans un langage qui se compile: la recherche opérationnelle avec l'inversion de matrices serait peut-être plus à l'aise en C qu'en PHP.... ou en fortran...

3) De temps en temps, quand un bug de mon éditeur a mis le souk dans un fichier PHP, j'y repense 3 secondes.

4) Si ton souci est plutôt commercial, je sais qu'il existe des "obfuscateurs" de code PHP (j'ai partiicpé à ubne discussion sur ce sujet...)