かなり単純なタスクを自動化したい。このために、PHP-CLIを使用してコマンドラインから実行する小さなPHPスクリプトを記述しました。このスクリプトを誰かに渡したいのですが、したくありません。
- ソースコードを配ります
- システムにPHPをインストールするように頼む
PHPスクリプトの.exeバージョンを作成する方法はありますか?逆コンパイルについてはあまり心配していません。PHPをインストールして構成するように人々に依頼することについて、私はもっと心配しています。
かなり単純なタスクを自動化したい。このために、PHP-CLIを使用してコマンドラインから実行する小さなPHPスクリプトを記述しました。このスクリプトを誰かに渡したいのですが、したくありません。
PHPスクリプトの.exeバージョンを作成する方法はありますか?逆コンパイルについてはあまり心配していません。PHPをインストールして構成するように人々に依頼することについて、私はもっと心配しています。
回答:
ピーチパイ
https://github.com/iolevel/peachpie
Peachpieは、MicrosoftのRoslynに基づいており、人気のあるPhalangerを使用したPHP 7コンパイラです。PHPコードを純粋なMSILにコンパイルすることにより、.NET / .NETCore内でPHPを実行できます。
ファランジャー
http://wiki.php-compiler.net/Phalanger_Wiki
https://github.com/devsense/phalanger
Phalangerはプラハのチャールズ大学で開始されたプロジェクトであり、Microsoftによってサポートされていました。PHPスクリプト言語で記述されたソースコードをCIL(Common Intermediate Language)バイトコードにコンパイルします。これは、.NET FrameworkのJITコンパイラコンポーネントによって完了するコンパイルプロセスの開始を処理します。ネイティブコードの生成や最適化は扱いません。その目的は、PHPスクリプトを.NETアセンブリ、CILコードとメタデータを含む論理ユニットにコンパイルすることです。
バンバラム
https://github.com/xZero707/Bamcompile/
Bambalam PHP EXE Compiler / Embedderは、PHPアプリケーションをスタンドアロンのWindows .exeアプリケーションに変換する無料のコマンドラインツールです。生成されたexeファイルは完全にスタンドアロンであり、php dllなどは必要ありません。phpコードはTurck MMCache Encodeライブラリを使用してエンコードされているため、ソースコードを保護しながらアプリケーションを配布する場合に最適なソリューションです。コンバーターは、ウィンドウ処理されたPHPアプリケーション(WinBinderライブラリなどを使用して作成されたもの)の.exeファイルを生成するのにも適しています。スタンドアロンのPHPソケットサーバー/クライアント(php_sockets.dll拡張機能を使用)を作成する場合にも適しています。PHPソースからネイティブマシンコードを生成しないという意味では、実際にはコンパイラではありませんが、動作します。
ZZEE PHPExe
ZZEE PHPExeは、PHP、HTML、JavaScript、Flash、およびその他のWebファイルをWindows GUI exeにコンパイルします。使い慣れたPHP Webパラダイムを採用することで、Windows GUIアプリケーションを迅速に開発できます。変更をほとんどまたはまったく行わずに、オンラインアプリケーションとWindowsアプリケーションに同じコードを使用できます。市販品です。
phc-win
http://wiki.swiftlytilting.com/Phc-win
PHP拡張bcompilerは、PHPスクリプトコードをPHPバイトコードにコンパイルするために使用されます。このバイトコードは、bcompiler拡張機能が読み込まれている限り、他のphpファイルと同じように含めることができます。すべてのバイトコードファイルが作成されたら、変更されたEmbederを使用して、すべてのプロジェクトファイルをプログラムexeにパックします。
必要
ExeOutput
商業の
WinBinder
WinBinderは、スクリプトプログラミング言語であるPHPのオープンソース拡張機能です。これにより、PHPプログラマーはネイティブWindowsアプリケーションを簡単に構築でき、最小限の労力で迅速で価値のある結果を生成できます。PHPのパワーと柔軟性のおかげで、数十行の短いスクリプトでも便利なプログラムを生成できます。
PHPDesktop
https://github.com/cztomczak/phpdesktop
PHPデスクトップは、2012年にCzarek Tomczakによって設立されたオープンソースプロジェクトで、PHP、HTML5、JavaScript、SQLiteなどのWebテクノロジーを使用してネイティブデスクトップアプリケーションを開発する方法を提供します。このプロジェクトは、単なるPHPからEXEへのコンパイラーではなく、Webブラウザー(Internet ExplorerまたはChrome組み込み)、Mongoose Webサーバー、およびPHPインタープリターを組み込んでいます。従来の開発ワークフローは同じです。既存のWebサイトをデスクトップアプリケーションに変換する手順は、基本的には「www /」ディレクトリにコピーすることです。SQLiteデータベースの使用はオプションです。アプリケーションのインストーラーにmysql / postgresqlデータベースを埋め込むことができます。
PHPナイトレイン
https://github.com/kjellberg/nightrain
PHP Nightrainを使用すると、HTML、CSS、JavaScript、およびPHP Webアプリケーションを、Windows、Mac、およびLinuxオペレーティングシステムのネイティブデスクトップアプリケーションとしてデプロイおよび実行できます。人気のあるPHPフレームワーク(CakePHP、Laravel、Drupalなど)もサポートされています!
phc-win "フォーク"
https://github.com/RDashINC/phc-win
phc-winの分岐したバージョンで、phc-winと同じ手法を使用しますが、ほとんどすべての最新のPHPバージョンをサポートしています。(5.3、5.4、5.5、5.6など)また、Enigma VBを使用してphp5ts.dllとexeを組み合わせたり、UPXで圧縮したりすることもできます。最後に、win32stdとwinbinderが静的にPHPにコンパイルされています。
編集
別のオプションは使用することです
http://www.appcelerator.com/products/titanium-cross-platform-application-development/
PHPを含むさまざまな言語から、さまざまなプラットフォーム用の実行可能ファイルを構築できるオンラインコンパイラ
TideSDK
TideSDKは、実際には名前が変更されたTitanium Desktopプロジェクトです。Titaniumは引き続きモバイルに重点を置いており、デスクトップバージョンを放棄しました。これは、オープンソース化してTideSDKと呼んだ一部の人々に引き継がれました。
一般に、TideSDKはHTML、CSS、JSを使用してアプリケーションをレンダリングしますが、プラグインモジュールとしてPHPなどのスクリプト言語、およびPythonやRubyなどの他のスクリプト言語をサポートしています。
すべてのツールが非常に古いため、他の回答のほとんどのツールで問題が発生しました。
「機能する」ソリューションが必要な場合は、WinRar SFXアーカイブにプロジェクトのphpの最小限のバージョンをパックし、すべてを一時ディレクトリに抽出して実行するように設定しphp your_script.php
ます。
基本的なスクリプトを実行するために必要なファイルはphp.exe
、and php5.dll
(またはphp5ts.dll
バージョンによっては)だけです。
拡張機能を追加するには、それらをphp.iniファイルと一緒にパックします。
[PHP]
extension_dir = "."
extension=php_curl.dll
extension=php_xxxx.dll
...
私は最初の答えで与えられた解決策のほとんどを試しました、私のために働いてそして非商業的である唯一のものはphp-desktopです。
私は単にphpファイルをwww/
フォルダーに入れ、名前を変更し、.exe
私のphpをexeとして実行することができました!!
また、完全なドキュメント、最新のサポート、WindowsおよびLinuxの互換性があり、オプションは簡単に変更できます。
RapidEXEはまさにこの仕事のためのものです:
phpプロジェクトをスタンドアロンexeに変換します。私は他のすべてのコンパイラーを十分に持っていて、それらを1つずつ試しました、そしてそれらはすべて私を何らかの方法で失望させました。私のゲストになってください、フィードバックはいつでも大歓迎です!
補足:その背後にあるメカニズムは、WinRAR SFXアプローチと非常に似ています。エンジンを抽出し、ソースを抽出して実行します。作業が速くて簡単です。1コマンドのコンパイル、圧縮、スマートアンパック、自動クリーンアップ、簡単な設定、phpエンジンとバージョンのフルコントロール。また、最小限の労力で拡張可能です。
今後ともよろしくお願いいたします。
Cannot find myself (D:\Desktop\phpflexer\phpflexer.exe)
ExeOutputは、PHP WebサイトをWindowsアプリケーションおよびソフトウェアに変えることもできます
PHP WebサイトをWindowsアプリケーションとソフトウェアに変える
ExeOutput for PHPで作成されたアプリケーションは、PHPスクリプト、PHPアプリケーション、およびPHP Webサイトをネイティブに実行し、Webサーバー、Webブラウザー、またはPHPディストリビューションを必要としません。これらはスタンドアロンであり、最近のWindowsバージョンがインストールされているコンピューターで動作します。
ExeOutput for PHPは、PHPスクリプト、JavaScript、HTML、CSS、XML、PDFファイル、Flash、Flashビデオ、Silverlightビデオ、データベース、画像など、最新のサイトにあるすべての要素で機能する強力なWebサイトコンパイラです。これらの要素をPHPランタイムおよびPHP拡張機能と組み合わせて、ExeOutput for PHPは完全なアプリケーションを含むEXEファイルを構築します。
この問題に関する私の経験から、これらのソフトウェアのほとんどは小規模なプロジェクトで問題なく機能します。
しかし、大きなプロジェクトはどうですか?例:Zend Framework 2など。
一部のユーザーはブラウザを実行する必要があり、これをお客様に伝えるのは困難です。http://localhost/
ブラウザのアドレスバーに「入力してです!!
これを行う簡単なプロジェクトを作成します:PHPPy
これは、phpプロジェクトを実行するためのスタンドアロンの実行可能ファイルを作成するための完全な方法ではありませんが、これを行うのに役立ちます。
PyInstallerまたはPy2exeでpythonファイルを.exeファイルにコンパイルできませんでした。
Uniformserverの実行可能ファイルは必要ありません。
現在のPHP Nightrain(4.0.0)はPythonで記述されており、wxPythonライブラリを使用しています。これまでのところ、wxPythonは現在のPHP Nightrainを実現するためにうまく機能していますが、PHP Nightrainを次のレベルに引き上げるために、PHP Nightrainの兄弟であるPHPWebkitを導入しています!
これは、PHP Nightrainのアップデートです。