在Windows中PHP和C之间是否可以共享内存?


is it possible to share memory between PHP and C in Windows?

可以在Windows中使用PHP脚本和C/c++程序之间的共享内存吗?例如,通过使用PHP共享内存(链接)和windows内存映射文件?

我认为如果您创建自己的PHP扩展,这可能是可能的。据我所知,PHP扩展是用C语言编写的。

可能,已经有一些扩展被写来做这件事了。

乌利希期刊指南:

看起来这是可能的。请查看官方文档中的这一章:http://php.net/manual/en/book.shmop.php。下面是一些例子:http://www.raspberry-projects.com/pi/programming-in-c/memory/shared-memory-between-c-application-and-php-web-server

乌利希期刊指南2:

我对共享内存和内存映射文件不太熟悉,但看起来这些问题在某种程度上与你的问题相似:共享内存c++ - PHP和PHP -访问用c++创建的共享内存

另外,您可能有兴趣阅读George Schlossnagle的《高级PHP编程》(链接)。这里有一个如何实现PHP扩展来处理内存映射文件的示例。

是有可能的。从上面的链接开始,我已经能够编写一个PHP扩展和一个简单的程序,它们共享相同的命名共享内存。

  • https://msdn.microsoft.com/en-us/library/windows/desktop/aa366551 (v = vs.85) . aspx
  • http://devzone.zend.com/303/extension-writing-part-i-introduction-to-php-and-zend/Heading12