2017-10-19 83 views
1

我的服务器上有一个包含函数的JavaScript文件。 我想开发一个REST Api来连接到这个服务器,运行javascript函数并发回输出。如何从PHP文件调用Javascript函数

是否可以从PHP文件调用JavaScript函数?

我读this但它不回答我的问题,因为我的js文件与php文件位于同一台服务器上。

V8Js扩展我在找什么?

感谢

编辑: 的js函数如下:

function (line, userWeight, weightunit){ 

    //logic is here 

    var computed = { 
       userLengthFtin: userLengthFtin, 
       userLevel: userLevel, 
       proId: line['id'], 
       proLengthFeetin: proLengthFeetin, 
       proThick: proThickFtin, 
       weightunit: weightunit 
      }; 

      return computed; 
     } 
+0

什么是JS功能呢?你可以发布吗? – mpen

+0

不,我很抱歉无法发布实际功能,但我会在问题 – Louis

+0

中添加其形式,因此它只是计算一些东西?你不能直接在客户端上运行?如果可以的话,我会将它移植到PHP中,否则设置一个小节点服务器来处理API请求,并让nginx将您的特殊端点转发到节点而不是PHP。然后,您不必在PHP内部运行JS,并且可以在Node中添加其他终端节点(如果需要的话)。 – mpen

回答

2

是否有可能调用从PHP文件中的JavaScript功能?

你需要把东西交给一些其他可以执行JS的软件。这可能是通过脱壳,或者可能是通过Selenium或您找到的V8js库等库。不管你选择什么,它都需要能够处理JS的特定需求(例如,如果JS期望嵌入在可访问DOM的网页中,并且可以通过Web浏览器提供的所有API),那么你不能简单地使用Node.js来运行它)。

在PHP中重写函数可能会更简单。

+0

谢谢,我会尝试V8Js或者在php中重写它... – Louis