我试图找出Ruby是否具有当前使用的php的fopen()方法,如下所示:
$fd = fopen("php://stdin", "r");
会使用ARGV变量吗?
基本上我打算做的是使用.procmailrc文件转发原始电子邮件消息,我已经在测试php文件中工作,但该项目需要使用Ruby。因此,我不能100%确定使用ARGV变量是否有效,或者我是否需要通过其他方式捕获电子邮件流。
非常感谢任何帮助。谢谢:))
答案 0 :(得分:2)
ARGV和(标准)输入流是两个不同的东西。 ARGV包含传递给可执行文件的参数,例如someapp a b c
,其中a,b和是参数。 stdin是一个文件句柄。您通常有三个standard streams。 stdin是只读的,stdout和stderr是只写的。
在Ruby中,您可以使用预定义常量STDIN,STDOUT和STDERR来访问默认流。还有变量$ stdin,$ stdout,$ stderr,它们使用与STDIN,STDOOUT和STERR相同的值进行初始化,但可以重新分配其他值。
答案 1 :(得分:0)
你可能是指ARGF变量,看看: