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