我想做的有点不同,我想知道是否可以创建某种接口(interface),这样如果在 php 中调用特定函数(独立),参数将被转发到一个方法在 C# 中,反之亦然。
最佳答案
当然取决于您要交换的数据类型,应用程序是在同一台服务器上还是在两个不同的服务器上等等。
我在一些基于 Web 的项目中兼顾了 PHP 和 C#。我所做的:创建一个公开 RESTful API 的 ASP.NET MVC 项目。然后通过 HTTP(使用 CURL)从 PHP 调用此 API 公开的方法。我使用 JSON 作为数据交换格式,将数据从 PHP 传递到 C#,然后再返回。这很好用,因为这两个应用程序位于不同的服务器上。
我还可以想象某种套接字服务器。例如用 C# 编写的后台进程正在监听某个端口,然后您可以通过 PHP 的套接字函数连接到它。我做了类似的事情来连接 PHP 和 Java。 Java 应用程序作为恶魔进程在端口 XXXX 上运行,并且是 Apache FOP 的包装器。我使用 PHPs 套接字函数将 XML 和 XSLT 传递给 Java 恶魔,然后它使用 Apache FOP 将数据转换为 pdf 并通过套接字连接将其返回给 PHP,PHP 又将 PDF 文件发送给请求页面的客户端。
可能还有一些其他方法,但这些是我迄今为止将两种不同技术连接在一起的经验。
编辑:顺便说一句:使用 IIS 的 Windows 网络服务器上的 PHP 确实不太好用。有时会出现奇怪的错误或某些不容易解决的与权限相关的错误。不过 YMMV。
关于C# + PHP 在同一个应用程序中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3618559/