以编程方式检查是否使用Python安装了PHP

时间:2013-08-09 06:34:54

标签: php python

使用python,我如何检查我的服务器(CentOS 6.4)上是否安装了PHP?大多数googled资源指向相反的方向,即检查python模块是否安装在PHP中。

有没有办法检查使用Python在服务器上安装PHP(无论什么版本)?

修改 我编写了一个bash脚本,它只调用php -v并且可以在python中调用,但是在Python中有没有其他方法直接调用?

3 个答案:

答案 0 :(得分:3)

您可以使用子进程检查它是否可以执行命令。

import subprocess as sp
def hasPHP():
    try:
        sp.check_call(['php', '-v'])
        return True
    except:
        return False

然后,您可以致电hasPHP()获取TrueFalse


注意:虽然通常最好指定一种错误类型,可能出现的各种错误(不同的操作系统等),但将它排除在外会更有意义。


关于as语法:

这一行:

import subprocess as sp

基本上这样做(稍微复杂一些):

import subprocess
sp = subprocess
del subprocess

在不太正式的术语中,它为长模块名称提供别名。

答案 1 :(得分:0)

怎么样:

from os import system
php = system('php --version')

if php != 0:
    print 'Missing: PHP'

答案 2 :(得分:0)

如果已安装,您将找到php二进制文件/usr/bin/php/usr/local/bin/php

检查路径是否为现有文件:

os.path.isfile(path)

  

如果路径是现有的,则返回True   常规文件。这符合象征意义   链接,所以islink()和。{   isfile()可以是相同的   路径。