140 votes

Convertir un script PHP en un exécutable Windows autonome

Je veux automatiser une tâche assez simple. Pour cela, j'ai écrit un petit script PHP que je lance depuis la ligne de commande en utilisant PHP-CLI. Maintenant, je veux remettre ce script à quelqu'un mais je ne veux pas le faire :

  • donner le code source
  • demandez-lui d'installer PHP sur le système

Existe-t-il un moyen de créer une version .exe du script de PHP. Je ne suis pas vraiment préoccupé par la décompilation ; je suis plus inquiet de demander aux gens d'installer et de configurer PHP.

2 votes

Avez-vous entendu parler de bamcompile (r) ?

1 votes

J'utilise Bambalam depuis un certain nombre d'années. Il est bloqué depuis une éternité maintenant - et plus précisément, il n'est compatible qu'avec PHP4.4.4. Cependant, tant que vous n'avez pas besoin du support UTF8 et autres, et que vous pouvez supporter les foreach() cassés et quelques autres, cela devrait fonctionner pour vous. Notez qu'il est impossible de gérer, par exemple, les noms de fichiers UTF8 dans un répertoire, avec PHP4.4.4. Rappelez-vous également qu'il crée des fichiers dans %TEMP% qui ne sont jamais supprimés (php[0-F]{2}.tmp), vous devrez les nettoyer.

0 votes

Les binaires de PHP peuvent être portés. Vous pouvez simplement dire aux gens d'extraire un dossier entier et de créer un fichier batch qui exécute quelque chose comme "php.exe -c php.ini script.php".

2voto

srinath Points 127

ExeOutput est également capable de transformer des sites Web PHP en applications et logiciels Windows.

Transformer les sites Web PHP en applications et logiciels Windows

Les applications créées avec ExeOutput pour PHP exécutent des scripts PHP, des applications PHP et des sites Web PHP en mode natif, et ne nécessitent pas de serveur Web, de navigateur Web ou de distribution PHP. Elles sont autonomes et fonctionnent sur tout ordinateur équipé d'une version récente de Windows.

ExeOutput for PHP est un puissant compilateur de sites Web qui fonctionne avec tous les éléments présents sur les sites modernes : Scripts PHP, JavaScript, HTML, CSS, XML, fichiers PDF, Flash, vidéos Flash, vidéos Silverlight, bases de données et images. En combinant ces éléments avec PHP Runtime et les extensions PHP, ExeOutput for PHP construit un fichier EXE qui contient votre application complète.

http://www.exeoutput.com/

1voto

Mb Rostami Points 1321

Mon expérience en la matière me dit que la plupart de ces logiciels fonctionnent bien avec de petits projets.
Mais qu'en est-il des grands projets ? par exemple, Zend Framework 2 et quelque chose comme ça : Zend Framework 2 et d'autres choses comme ça.
Certains d'entre eux ont besoin d'un navigateur pour fonctionner et il est difficile de dire au client "veuillez taper". http://localhost/ "dans la barre d'adresse de votre navigateur !

Je crée un projet simple pour faire cela : PHPPy

Il ne s'agit pas d'un moyen complet de créer un fichier exécutable autonome pour exécuter des projets php, mais il vous aide à le faire.
Je n'ai pas pu compiler le fichier python avec PyInstaller ou Py2exe en fichier .exe, j'espère que vous le pourrez.
Vous n'avez pas besoin des fichiers exécutables d'uniformserver.

4 votes

Créer un raccourci vers localhost, c'est un travail difficile, non ? :) De toute façon, vous avez raison sur "fonctionne bien sur les petits projets". L'unique complet "comme vous voulez" est le phpdesktop.

1voto

zeddex Points 126

La version actuelle de PHP Nightrain (4.0.0) est écrite en Python et utilise les bibliothèques bibliothèques wxPython. Jusqu'à présent, wxPython a bien fonctionné pour amener PHP Nightrain là où il est aujourd'hui. Nightrain où il est aujourd'hui, mais afin de pousser PHP Nightrain à son niveau PHP Nightrain à son prochain niveau, nous introduisons un frère de PHP Nightrain, le PHPWebkit !

C'est une mise à jour de PHP Nightrain.

https://github.com/entrypass/nightrain-ep

0 votes

Naetech.com a été volé. Impossible de télécharger quoi que ce soit.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X