Это мой скрипт python, который создает файл test.txt при его выполнении. когда я запускаю с помощью терминала (Ubuntu 11.04) root@gml-VirtualBox:/var/www/HMS# python test.py Он создает «test.txt» в каталоге /var/www/HMS как я ожидал.
test.py:
#! / usr / bin / env python
def init ():
filename = "test.txt"
file = open (имя файла, 'w')
file.write («Это новый контент test.txt :-)»)
file.close ()
print "done"
def main ():
в этом()
если __name__ == '__main__':
главный()
Но когда я пытаюсь вызвать этот test.py с помощью PHP, он не создает выходной файл test.txt.
index.php: $ tmp = exec ("python test.py"); echo "temp: $ tmp";
Оба test.py & index.php находятся в одном каталоге ( /var/www/HMS/ ). Но когда я изменил test.py вот так:
#! / usr / bin / env python
def init ():
print "done"
def main ():
в этом()
если __name__ == '__main__':
главный()
Он печатает temp: done в браузере, что я и ожидал.
Я не знаю, почему мой предыдущий код python работал не так, как ожидалось.