有没有可能在PHP中嵌入Python?

2024-05-16 13:38:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我为一家小型科技创业公司工作,我们的主要网站是建立在CMS Drupal上的,这是一个基于PHP的CMS。不过,我知道一些Python,我想开发web应用程序来与网站集成,并允许用户与它们交互。在

我该怎么做呢?有没有人有经验或知识?任何允许使用Python或从PHP或Drupal调用Python的特定模块/script/etc?在


Tags: 模块用户web应用程序cms网站etcscript
2条回答

有几种不同的方法可以将Drupal与外部应用程序集成,但是最好的办法可能是在Drupal中安装services module,并通过HTTP从Python应用程序进行调用,就像与远程服务器交互一样。在

其他一些选择:

  • 直接与Drupal的数据库交互,这是相当危险的,因为Drupal的数据库结构会随着模块升级甚至配置更改而发生显著变化。在
  • 将Python应用程序放在Drupal页面的iframe中,提供Drupal的设计,尽管没有功能集成。在
  • 使用JavaScript作为Drupal和Python之间的客户端中间人。在
  • 使用命令行作为Drupal和Python之间的服务器端中间人。Drush在这里很有用。在

如果您正在开发一个web应用程序,那么没有什么可以阻止您使用Python并使其从drupal未使用的子域或路径进行访问,只需让web服务器指向它。例如:

http://mainsite.com/ <- drupal
http://app.mainsite.com <- python web app
http://mainsite.com/python/ <- python web app

对于大多数web服务器来说,这是相当直接的。Django可能特别适合于此,它有一个很好的特性can inspect live databases, and generate models for you

^{pr2}$

这使您可以通过一个不错的ORM与Python中的现有数据库进行交互。在

如果您需要从PHP页面直接调用Python,可以使用zeromq实现快速IPC或TCP通信,或者构建一个简单的restapi等

相关问题 更多 >