是否可以使用C#创建PHP扩展?
我们需要将PHP连接到我们用针对Windows的C#.NET 4.6编写的内部库,并且希望尽可能接近PHP而不需要有一个我们可以调用外部到php的服务器,因此在家里扩建的想法。
我看了几个选项:
使用PHP DOTNET扩展来调用C#程序集。
编写PHP扩展名。
将C#代码称为外部服务。
能够使用C#编写PHP扩展是很有意思的,假设这是可能的。如果可能的话,我可以看到这可能不是“最佳”选项。
感谢阅读和建议!!!
答案 0 :(得分:0)
基于@SevaAlekseyev的想法,我能够让PHP使用COM调用C#。
<?php
$object = new COM('ComClassExample.ComClassExample');
echo '1 and 1 added: ' . $object->AddTheseUp(1,1);
?>
使用以下网站,我能够制作一个像COM对象一样暴露自己的C#dll。 https://whoisburiedhere.wordpress.com/2011/07/12/creating-a-com-object-from-scratch-with-c/
通过对Post-build事件的一点调整,我能够为PHP加载新版本(必须复制,因为PHP收到了拒绝访问的消息)
iisreset /stop
copy /Y "$(TargetPath)" C:\com\$(TargetFileName)
$(frameworkdir)\$(frameworkversion)\regasm.exe C:\com\$(TargetFileName) /codebase /tlb /nologo
iisreset /start
@JuanDelaCruz Peachpie看起来像一个有趣的工具,但它看起来好像是在部署之前编译的,暂时不能在我们的商店中使用。
全部谢谢!