我有一个fortran程序,我想从php调用一些从php通过网站传递的参数。
我已经设置了php表单,但我不知道如何将信息发送给fortran。目前,信息通过提示输入到fortran程序:
write(\*,'("give input image name:",$)')
read(\*,\*) iminput
所以我想发送一个数组,或类似的东西,所以我可以
CHARACTER(LEN=*) :: iminput
iminput = post(1)
或类似的东西。
答案 0 :(得分:5)
如果您的程序需要在标准输入而不是命令行参数上使用其参数,您仍然可以使用管道自动传递信息。例如,如果程序询问您的姓名和年龄,您可以通过以下方式一次性地从shell中提取这些内容,而无需等待它提出:
echo -e "user1795485\n1 day" | theprogram
对于您的问题,您需要能够运行程序,写入其标准输入,然后从其标准输出中读取其响应。我认为proc-open会让你做到这一点。我认为,该页面上的示例1正是您想要的。基本上,您可以调用proc-open
,然后写入fortran程序所需的信息,关闭写句柄然后读回结果。请注意,fortran程序不需要以任何方式进行修改。