编辑:PHP 和 Dart 脚本将在客户端运行。
我将在我的页面加载时运行一个 php 脚本。然后我想访问 dart 范围内的 php 函数。有可能还是我应该将所有东西都迁移到飞镖?
更加具体;
- 我正在尝试开发一个 facebook 应用程序(使用 facebook php sdk),
- 我已经写了几篇“Hello, World!”。网络应用程序,
- 这就是我现在获得的所有经验。
提前致谢。
编辑:PHP 和 Dart 脚本将在客户端运行。
我将在我的页面加载时运行一个 php 脚本。然后我想访问 dart 范围内的 php 函数。有可能还是我应该将所有东西都迁移到飞镖?
更加具体;
提前致谢。
没有。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 样式。您可以创建一个 PHP WebSocket 服务器,该服务器将根据收到的 WebSocket 消息调用函数,但这可能会造成安全漏洞。
一些服务器端语言提供与其他此类语言互操作的机制。Dart 似乎没有提供调用 PHP 代码的机制。
Dart 确实提供了一种以 Process 类的形式运行进程的机制。您可以使用 Process 类来调用 PHP 解释器。
Dart 确实提供了与 C 的互操作性。使用Native Extensions,Dart 代码可以调用 C 函数。基于这个问题,C代码可以调用PHP函数。