发布于 2012-03-17 07:48:56
相反,使用$stderr
更可取。
原因是作为全局变量的$stderr
可以重新赋值,而作为常量的STDERR
不应该被重新赋值(它会引发警告)。
通常,它们都指向相同的标准错误文件,但在某些情况下,您可能希望临时将所有输出重定向到其他地方(例如,重定向到日志文件或字符串缓冲区),在这种情况下,您只需重新分配$stderr
,所有代码都会遵守这一点(如果您足够聪明,一开始就使用$stderr
而不是STDERR
)。
https://stackoverflow.com/questions/9745888
复制相似问题