Perl 解释器的版本号,以 5.XXXYYY 的十进制形式表示,其中 XXX 是版本号 / 1e3,YYY 是子版本号 / 1e6。例如,Perl v5.10.1 将表示为 "5.010001"。
此变量可用于确定执行脚本的 Perl 解释器是否在正确的版本范围内。
warn "No PerlIO!\n" if "$]" < 5.008;
在比较 $]
时,应使用数值比较运算符,但应先将变量转换为字符串,以避免其原始数值不准确导致的问题。
有关在运行的 Perl 解释器过旧时失败的便捷方法,请参阅 use VERSION
和 require VERSION
的文档。
有关 Perl 版本的 版本 对象表示,请参阅 "$^V",该对象允许更灵活的字符串比较。
$]
相比 $^V
的主要优势在于它在任何版本的 Perl 上都能正常工作。缺点是它不能轻易地与其他格式的版本进行比较(例如,字面 v 字符串,"v1.2.3" 或版本对象),并且数值比较会受到二进制浮点数表示的影响;它适用于数值字面版本检查,但不适合与未经验证的变量进行比较。
$OLD_PERL_VERSION
形式是在 Perl v5.20.0 中出于历史原因添加的,但建议不要使用它。(如果你使用 $]
的原因是为了在旧版本的 Perl 上运行代码,那么将其称为 $OLD_PERL_VERSION
将是适得其反的。)
助记符:这个版本的 Perl 是否在正确的括号中?