编辑:PHP和Dart脚本将在客户端运行。
我将在我的页面加载上运行php脚本。然后我想访问dart范围内的php函数。是否有可能或者我应该将所有东西迁移到飞镖?
更具体一点;
提前致谢。
答案 0 :(得分:1)
否即可。在Dart和PHP之间没有干净的沟通方式。使用客户端Dart,您会遇到客户端和服务器端脚本的常见问题。对于服务器端Dart,据我所知(用谷歌研究),两者之间没有互操作性。
在Web开发中,有两类主要的编程语言:服务器端和客户端。服务器端语言在Web服务器上运行,并确定Web服务器发送以响应HTTP请求的响应。客户端语言在客户端(读取,浏览器)上运行,并在浏览器中操作DOM等。
从客户端代码调用服务器端代码就像在没有ssh的计算机上在朋友计算机上运行命令。直接从客户端语言(function my_client_func() { my_server_func(); }
)直接调用服务器端函数是不可能的。
有许多方法可以实现此功能。两个是AJAX和WebSockets。
AJAX允许您异步发出HTTP请求,并在数据到达时对其进行操作。您可以创建一种机制,通过特殊的网页或类似的东西从服务器检索数据。您可以创建一个名为facebook.com/apps/yourapp/function.php
的网页,并使用name=myFuncitonName&var1=something&var2=else
等参数(function.php?name=myFunction...
)进行调用。
WebSockets允许您创建全双工TCP-esque。您可以创建一个PHP WebSocket服务器,该服务器将根据收到的WebSocket消息调用函数,但这可能会造成安全漏洞。
某些服务器端语言提供了与其他此类语言进行互操作的机制。 Dart似乎没有提供调用PHP代码的机制。
Dart确实提供了一种以Process类的形式运行进程的机制。您可以使用Process类来调用PHP解释器。
Dart确实提供了与C的互操作性。使用Native Extensions,Dart代码可以调用C函数。根据{{3}}问题,C代码可以调用PHP函数。