将 php 转换/编译为 EXE

本文仅仅是将原文用谷歌作了翻译,原文来源于 http://stackoverflow.com

资料来源  http://stackoverflow.com/questions/9046675/convert-a-php-script-into-a-stand-alone-windows-executable

将PHP脚本转换为独立的Windows可执行文件

Peachpie

http://www.peachpie.io

https://github.com/iolevel/peachpie

Peachpie是基于Microsoft的Roslyn的PHP 7编译器,并从流行的Phalanger绘制。它允许PHP通过将PHP代码编译为纯MSIL在.NET / .NETCore中执行。

Phalanger

http://v4.php-compiler.net/

http://wiki.php-compiler.net/Phalanger_Wiki

https://github.com/devsense/phalanger

Phalanger是一个由布拉格的查尔斯大学启动的项目,得到了微软的支持。它将以PHP脚本语言编写的源代码编译成CIL(通用中间语言)字节码。它处理由.NET Framework的JIT编译器组件完成的编译过程的开始。它不解决本机代码生成或优化问题。其目的是将PHP脚本编译成.NET程序集,包含CIL代码和元数据的逻辑单元。

Bambalam

http://www.bambalam.se/bamcompile/

https://sourceforge.net/projects/bamcompile/

Bambalam PHP EXE编译器/ Embedder是一种免费的命令行工具,用于将PHP应用程序转换为独立的Windows .exe应用程序。该转换器也适用于生成窗口PHP应用程序(使用例如WinBinder库创建)的.exe文件。它也适用于制作独立的PHP Socket服务器/客户端(使用php_sockets.dll扩展)。这不是一个编译器,因为它不会从PHP源生成本地机器代码,但它可以工作!

ZZEE PHPExe

http://www.zzee.com/phpexe/

ZZEE PHPExe将PHP,HTML,Javascript,Flash和其他Web文件编译成Windows GUI exes。您可以通过使用熟悉的PHP Web范例来快速开发Windows GUI应用程序。您可以使用相同的代码进行在线和Windows应用程序的修改。这是商业产品。

phc-win

http://wiki.swiftlytilting.com/Phc-win

PHP扩展bcompiler用于将PHP脚本代码编译成PHP字节码。只要加载了bcompiler扩展名,该字节码就可以像任何php文件一样被包含。一旦创建了所有的字节码文件,一个修改后的Embeder被用来将所有的项目文件打包到程序exe中。

需要

php5ts.dll

php_win32std.dll

php_bcompiler.dll

php-embed.ini

ExeOutput

http://www.exeoutput.com/

使用ExeOutput for PHP进行的应用程序本机运行PHP脚本,PHP应用程序和PHP网站,不需要Web服务器,Web浏览器或PHP分发。它们是独立的,可以在任何具有最新Windows版本的计算机上工作。

WinBinder

http://winbinder.org/

WinBinder是PHP的开源扩展,脚本编程语言。它允许PHP程序员轻松构建本机Windows应用程序,以最小的努力产生快速有益的结果。即使是具有十几行的短脚本也可以生成有用的程序,这得益于PHP的强大功能和灵活性。

PHPDesktop

http://code.google.com/p/phpdesktop/

PHP Desktop是由Czarek Tomczak于2012年创建的一个开源项目,旨在通过PHP,HTML5,JavaScript和SQLite等网络技术开发本地桌面应用程序。该项目不仅仅是一个PHP到EXE编译器,它嵌入了一个网络浏览器(Internet Explorer或Chrome嵌入式),一个Mongoose网络服务器和一个PHP解释器。您习惯的开发工作流程保持不变,将现有网站转变为桌面应用程序的步骤基本上是将其复制到“www /”目录。使用SQLite数据库是可选的,您可以在应用程序的安装程序中嵌入mysql
/ postgresql数据库。

PHP Nightrain

http://www.naetech.com/php-nightrain

使用PHP Nightrain,您将能够在Windows,Mac和Linux操作系统上部署和运行HTML,CSS,JavaScript和PHP Web应用程序作为本机桌面应用程序。受欢迎的PHP框架(例如CakePHP,Laravel,Drupal等)得到很好的支持!

PHP-Nightrain是PHPDesktop的非常好的替代品,是跨平台的(Windows,OSX,Linux)。由于依赖于Java,因此它的声誉不佳,现在已将其转换为Python作为包装器,是开发基于PHP的跨平台软件的非常好的选择。- github.com/naetech/nightrain

这是PHP Nightrain的更新。 https://github.com/entrypass/nightrain-ep

phc-win "fork"

http://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

http://www.tidesdk.org/

TideSDK实际上是重命名的Titanium Desktop项目。Titanium仍然专注于移动设备,并放弃了桌面版本,这些版本被一些开源的人员接管,并被称为TideSDK。

通常,TideSDK使用HTML,CSS和JS来呈现应用程序,但它支持脚本语言(如PHP),插件模块以及其他脚本语言(如Python和Ruby)。

PHPPy

https://github.com/mbrostami/PHPPy

这不是完整的方法来创建独立的可执行文件来运行php项目,但可以帮助您做到这一点。

https://sourceforge.net/projects/exe-p/

将 php 转换/编译为 EXE的更多相关文章

  1. 把perl脚本编译成exe

    来源:http://www.veryhuo.com/a/view/38338.html 今天想把 perl 脚本编译成 exe 以便脱离 perl 解释器独立运行.都可以生成PERL的PE文件,在PE ...

  2. Matlab中调用VS编译的exe文件并传递变量 的方法

    经历::在网上找了很多方法,都没有实现在matlab中调用vs的exe文件并且能够传递变量参数,一些小细节花费了自己很多时间,比喻忽略了一些空格!  网上很多的方法都是纯粹复制别人的方法,自己都没有去 ...

  3. 用python写个简单的小程序,编译成exe跑在win10上

    每天的工作其实很无聊,早知道应该去IT公司闯荡的.最近的工作内容是每逢一个整点,从早7点到晚11点,去查一次客流数据,整理到表格中,上交给素未蒙面的上线,由他呈交领导查阅. 人的精力毕竟是有限的,所以 ...

  4. cmd,py脚本,py编译的exe,uipath及uibot对它们的调用

    UIPATH调用Python编译程序exe 好处: 1)code不以可编辑的状态被用户接触,对于不懂反编译的一般用户,可提升一定的代码安全性: 2)不需要用户机器上安装 python环境. 3)可以将 ...

  5. 把java编译成exe和安装包

    由于某些项目甲方迟迟不结算尾款,这就很烦,只能想一些办法 我们知道java,python之类的代码是没有隐私可言的,那么怎么办,总要发给甲方验收,这就要做一些操作来确保自己的利益. 通过在源代码里加上 ...

  6. Python将py文件编译为exe的方法

    使用PyCharm工具写好的Python程序脚本,怎么将.py文件编译为可执行的.exe文件 前提是已经安装了Python环境. 第一步:在PyCharm内下载安装pyinstalle库或使用CMD安 ...

  7. 编译LOADCEPC.EXE程序

    1.安装编译工具 安装MSVC152路径C:/MSVC; 安装MASM611可以自己指定E:/MASM611; 命令行编译 相关文件配置 修改setupen2.bat 如下: :PATH_DONE s ...

  8. vs2010 项目编译 ResGen.exe”已退出,代码为 -1073741701

    解决的办法如下: 1.关闭所有Visual Studio: 2.以管理员的身份打开命令提示窗口:(开始-运行-cmd) 3.更改目录至"CD C:\Program Files (x86)\M ...

  9. gradle 编译 "aapt.exe'' finished with non-zero exit value 1 问题

    升级了一下android studio的版本,从3.0升级到3.3,升级过后,编译确实快了不少,但项目导入后一直报 "aapt.exe'' finished with non-zero ex ...

随机推荐

  1. jquery中$.get()提交和$.post()提交有区别

    jquery中$.get()提交和$.post()提交有区别吗? 相同点:都是异步请求的方式来获取服务端的数据: 异同点: 1.请求方式不同:$.get() 方法使用GET方法来进行异步请求的.$.p ...

  2. Network authentication method and device for implementing the same

    A network authentication method is to be implemented using a network authentication device and a use ...

  3. 利用socket模拟http的混合表单上传(在一个请求中提交表单并上传多个文件)

           在非常多企业级应用中,我们都没法直接通过开发语言sdk包封装的http工具来模拟http复合表单(multipart/form-data),特别是在跨语言跨平台的编程过程中.事实上实现方 ...

  4. 惊叹计算机运行速度的提升---以n Queens 问题为例

    1 介绍 实现了书<Data Structures and Program design in C++>(Robert L. Kruse and Alexander J. Ryba, 20 ...

  5. Qt中事件分发源码剖析

    Qt中事件分发源码剖析 Qt中事件传递顺序: 在一个应该程序中,会进入一个事件循环,接受系统产生的事件,而且进行分发,这些都是在exec中进行的. 以下举例说明: 1)首先看看以下一段演示样例代码: ...

  6. vue --- axios发post请求后台接收不到参数的三种解决方案

    最近用vue  做项目使用axios 发送post 请求时遇到了前端传数据后端接收不到的情况: 后来仔细对比发现axios传值是这样的: 而 ajax 传值是这样的: 一个 Request Paylo ...

  7. Win form碎知识点

    判断1.ds不能为空 2.ds的表数量必须大于0 3.判断ds的第一个表中的行数必须有 if (ds.Tables.Count > 0 && ds != null &&a ...

  8. jasperreport 追加新报表(2)

    用ireport做好模版后,如果要新加一个打印页,如果是新手,直接修改模版应该是理想情况, 可是什么数据源 feild,parameter,var,subreport ,还有路径, 真的可以让一个人疯 ...

  9. 把华为交换机设置成时钟源服务器(NTP)

    把华为交换机设置成时钟源服务器(NTP),提供给下面客户端Linux服务器使用, 1,先设置交换机的时区,和正确时间 # 假设地理位置在中国北京,设置本地时区名称为BJ. 如果系统默认的UTC是伦敦时 ...

  10. 新手教程:电信+广电(或其他运营商)双WAN设置

    由于国内不同运营商之间互联互通存在问题,假如用联通的线路去访问电信的站点那么会比较卡,反之亦然:所以如果两个WAN的线路不是同一个运营商,一般都是建议用户双WAN模式选为“智能路由”.经过本人测试发现 ...