如何在Python中包含PHP脚本?
我有一个PHP脚本(news-generator.php),当我把它包含进来时,它会抓取一堆新闻内容并打印出来。现在,我的网站是用Python做的(CGI)。之前用PHP的时候,我在“新闻”页面上用过类似这样的代码:
<?php
print("<h1>News and Updates</h1>");
include("news-generator.php");
print("</body>");
?>
(为了简单起见,我把例子简化了一下。)
有没有办法让我用Python来执行这个脚本(news-generator.php),并返回输出,而且能在不同的平台上都能用?这样的话,我就可以这样做:
page_html = "<h1>News and Updates</h1>"
news_script_output = php("news-generator.php") //should return a string
print page_html + news_script_output
5 个回答
1
这可能有点偏题,不过如果你想以一种可以访问PHP脚本创建的变量(比如新闻项目的数组)的方法来做,最好的办法是执行这个PHP脚本,然后让它返回一个用JSON格式编码的数组作为字符串。接着在Python那边把这个字符串解码成可以用的格式,然后在Python中生成HTML和进行循环处理。
7
PHP是一种程序。你可以用subprocess来运行任何程序。
难点在于要模拟PHP所期待的整个CGI环境。
11
import subprocess
def php(script_path):
p = subprocess.Popen(['php', script_path], stdout=subprocess.PIPE)
result = p.communicate()[0]
return result
# YOUR CODE BELOW:
page_html = "<h1>News and Updates</h1>"
news_script_output = php("news-generator.php")
print page_html + news_script_output
这段代码是用来做某些操作的,但具体的功能需要根据上下文来理解。一般来说,代码块中的内容会包含一些指令或者逻辑,用于实现特定的任务。
如果你看到这样的代码块,通常意味着这里有一些编程的细节需要注意。对于初学者来说,理解这些代码的作用和如何使用它们是非常重要的。
总之,代码块是编程中不可或缺的一部分,掌握它们能帮助你更好地理解整个程序的运行方式。