有没有一种方法,能让node.js跑php?
发布于 13 年前 作者 nigary 16034 次浏览 最后一次编辑是 8 年前

就像apache、nginx一样,感觉node解释其他语言没什么压力吧。

28 回复

Why? Node又不是web server

好玩呗,管他是什么呢。

Github 搜到有一个像的, 不过好久没维护了
https://github.com/davidcoallier/node-php

想到一种很简单的方法:通过child_process调用命令行php,直接执行某个php文件

直接在命令行可以执行PHP~~

跟NodeJS一样 有repl模式~~

@sunshine1988 但是他想要通过nodejs作为服务器跑,如果直接命令行,就不能接受web请求了

@cattail2012 用php-fpm嘛,实现该通讯协议就行了

写个编译器把PHP编译成js代码。。。。。太伟大了

这么麻烦,难道php有那么好吗,还不如写一个amazing的nodejs web framework直接赶超php呢

哈哈哈,互相意淫~ 。 php有个 php-v8 , php 跑 node

@cattail2012 新写的框架没有可用的应用程序嘛,如果能直接转换PHP代码,网上就可以得到一大堆的应用了

@leizongmin 那么就让我们来创建这些应用吧!!!

感觉c,c++才是王道

child_process.exec(command, [options], callback)

比如 var child = require(‘child_process’); child.exec(’/usr/local/php/bin/php test.php’,function(error, stdout, stderr){

});

奇思秒想,呵呵……

Node 有没有直接脚本放到服务器, 访问相应网址直接就执行和返回的做法的? 跟 PHP 那样源码解压, 然后就能访问…

不行,不过要做到你要求的不需要几行代码,很简单的

如果能把这东西做出来还是挺有意思的,结合php和node的优势,想想都令人兴奋啊。

@jiyinyiyong 难道是我的理解有问题吗?只要机器上编译了node,这个不难吧?

@cattail2012 真的不知道… 本来猜 ‘require()’. 但 res 的传递不好办的样子,
再往细节就不清晰了… 楼上指点一遍吧

又来一个, 这次主页模仿 Node 的程度真是服了

React is a platform built on PHP for easily building fast, scalable network applications. React uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.

http://nodephp.org/

我猜测不管是php采用node的写法, 还是node上能跑php, 都会做成不伦不类的.

如果想写php那么整个php环境就好了. 如果喜欢node, 整个node环境就好了.

似乎现在还没有看到什么杂交的语言甚至是低度流行的.

杂交语言这块, microsoft做了不少, 比如让python支持.net的ironpython(其实也不算杂交了, 因为.net本身其实和语言无关的啦)

node 与 php 是同一级别的吧,互相 YY 着

直接上 code 吧

const cprocess = require('child_process');
const path = require('path');
const fs = require('fs');

var fpath =  path.resolve(__dirname, 'date.php');

fs.chmod(fpath, "775", (err)=>{
    if(err){
        return console.log(err);
    }

    cprocess.exec(`php ${fpath}`, (err, stdout, stderr)=>{
        if(err){
            throw err;
        }
        console.log(stdout);
        console.log(stderr);
    })
})
回到顶部