JPHP 是一个基于 JVM 的 PHP 编译器。支持 PHP 5.6+ 的很多新特性。JPHP 类似 javac ,可以将 PHP 源码编译成 JVM 的字节码并在 JVM 中执行。
支持: JDK 1.6+ (OpenJDK, Oracle)
该项目目的:
可在 PHP 中使用 Java 类库
通过 JIT 和 JVM 来提升性能
替换 Zend 糟糕的库,使用更好的运行时库
在非 Web 应用中使用 PHP 语言
字符串和线程的 Unicode
早在前几年已经有了.net core php的实现,还顺带实现了jit(详见这里),不过.net core不太受linux平台的待见,普遍对.net的印象也是只能运行在windows下,.net也是近几年才支持跨平台,可惜是事后诸葛亮,马后炮,机会、风口已经错过,市场份额早已被个语言抢占,大局已定。.net要是早在十几年前支持跨平台或许也就没有java什么事了,现在支持跨平台或许.net还有救
JPHP 是一个基于 JVM 的 PHP 编译器。支持 PHP 5.6+ 的很多新特性。JPHP 类似 javac ,可以将 PHP 源码编译成 JVM 的字节码并在 JVM 中执行。今天重新推荐的原因是 JPHP 有了新家 —— http://j-php.net/ 新的文档 http://j-php.net/wiki/Home 。 相关链接 JPHP 的详细介绍:请点这里 JPHP 的下载地址
JPHP试用指南 编译 环境准备 有JDK 1.6 的环境 Gradle 1.4 以上 具体配置略过,git签出https://github.com/dim-s/jphp/代码后,看readme.md文件即知。 开始编译 快速试用 切换到 jphp-example-project 目录 /path/to/gradle jar 开始编译,编译完成后会在当前目前下 build/libs/中 生成 ja
项目地址:https://github.com/jphp-compiler/jphp 旧文:http://www.cnblogs.com/x3d/p/3631386.html 旧文2:http://www.cnblogs.com/x3d/p/3642287.html 看过代码,就感觉这个项目应该还欠缺一点技术方面的东西:所有从PHP访问Java的功能必须要编写对应的Wrapper,而不能直接在PH
前两天还在想,像Quercus只封装了PHP在Java上的Web接口,有没有实现了完整的JVM语言特性的东东,这不,来了。 JPHP是一个面向Java虚拟机的PHP实现,支持PHP(5.3+)的很多特性。JPHP负责将PHP源代码编译为JVM字节码,使其能够运行在JVM上,这一点和JRuby、Jython等实现类似。它支持JDK 1.6及以上版本。该项目发起于去年10月。 JPHP无意替代Zend
开源中国上两波最大的开发者人群 Javer 和 PHPer,没事经常来场撕逼大战。对于此类大战,只要不涉及人身攻击,鄙人一向听之任之,然后从各种撕逼段子中找乐子,在屏幕前哈哈大笑。都跟你说了,Jxxx 才是最好的编程语言就是不信。(我就不告诉你 Jxxx 是什么,想喷我都没门儿) 其实撕逼者也是蛮有娱乐精神的,但是未免有点自作多情。这么 JPHP 来了。其实早在一年前我们就收录了这个项目,刚收录时
JPHP是一个面向Java虚拟机的PHP实现,支持PHP(5.3+)的很多特性。JPHP负责将PHP源代码编译为JVM字节码,使其能够运行在JVM上,这一点和JRuby、Jython等实现类似。它支持JDK 1.6及以上版本。该项目发起于去年10月。\ JPHP无意替代Zend PHP引擎或Facebook HHVM(HHVM的思路是将PHP编译为一种中间字节码,再通过JIT将字节码编译为x64机
PHP 7.1 是否达到了最佳性能? 鸟哥惠新宸答:不能说最,别看 PHP 7.1 现在这么快,但相比其它语言,在某些场景下,还是有差距的。这跟它天然的像动态、符号表、间接引用等特性有很大关系。PHP 7.1 相比 7.0 来说,做的最大的工作,就是一个类型推断系统加一个类型相关的中间代码执行引擎。这个不是新的工作,在2013年我们做 PHP 5.5 的 JIT 的时候类型推断系统已经做出来了,但
原标题:JPHP 一款基于JVM的新PHP编译器 JPHP是一款基于Java语言编写的PHP编译器以及新运行时库,支持多线程、unicode字符串(UTF-16)、GUI、Android开发以及嵌入式Web应用。JPHP可以将PHP源码编译成JVM字节码并在JVM中执行,目前暂不支持PHP5.6导入空间命名功能。项目托管在GitHub上,开源许可证基于:Apache 2.0。 主要特性包括: 通过
PHP代码的编译 PHP是解析型高级语言,事实上从Zend内核的角度来看PHP就是一个普通的C程序,它有main函数,我们写的PHP代码是这个程序的输入,然后经过内核的处理输出结果,内核将PHP代码"翻译"为C程序可识别的过程就是PHP的编译。 那么这个"翻译"过程具体都有哪些操作呢? C程序在编译时将一行行代码编译为机器码,每一个操作都认为是一条机器指令,这些指令写入到编译后的二进制程序中,执行
我试图在openshift上使用http://www.sitepoint.com/nginx-php5-5-phalcon-openshift/编译phalcon php 一切正常,但我无法完成模块编译:没有错误,只是ssh会话正在关闭。 cd app-root/runtime/repo/cphalcon/build./install 创建libtool configure:正在创建。/confi
我尝试匹配这个表达式: * ^X-Spam-Flag:是的 我用这个代码: 但是我有这个错误: PHP警告:preg_match():编译失败:在偏移量0处没有任何重复 regex和*和^有问题,但我能纠正吗?
第一章我们曾介绍过,PHP编译前的configure有两个特殊的选项,打开它们对我们开发PHP扩展或者进行PHP嵌入式开发时非常有帮助。但是当我们正常使用PHP的时候,则不应该开启这两个选项。 --enable-debug 顾名思义,它的作用是激活调试模式。它将激活PHP源码中几个非常关键的函数,最典型的功能便是在每一个请求结束后给出这一次请求中内存的泄漏情况。 回顾一下第三章《内存管理》部分,p
我使用maven命令来清理、构建整个项目、创建war并部署到服务器。我不能使用Intellij来做这件事,因为我只有社区版。它在与intellij相同的目录中构建项目。 为了加快速度,我编写了一个脚本,可以在本地“target”目录中找到比服务器中更新的已编译文件,并进行复制。虽然一切正常,但问题是Intellij并没有将使用maven编译的类视为应该跳过并重新构建整个项目的类。 目前它的工作原理
问题内容: PHP是编译还是解释? 问题答案: PHP是一种解释型语言。可以解释PHP的二进制文件已编译,但是您编写的文件却被解释。
我使用PHPMailer从服务器发送电子邮件,它一直运行良好。我们最近将网站从Windows Server 2012移动到Mac OS X 10.10。 我很难让抄送收件人工作,因为它在Mac OS X上运行。 我从一个数组中添加CC收件人: 电子邮件正在发送,但没有抄送地址被包括在内-似乎它们以某种方式被转换成密件抄送地址,因为它们的电子邮件被发送到抄送地址,但它们没有列在抄送地址部分...查看