有人可以准确解释有关4 perl导入的使用重新定位:do
,import
,use
和require
?
我正在寻找实用的建议,并牢记在mod_perl或类似情况下可能出现的问题。
我们都喜欢简单的例子,好的!
到目前为止,我找到的最佳资源是http://soniahamilton.wordpress.com/2009/05/09/perl-use-require-import-and-do/
,但是我没有考虑mod_perl的含义。
答案 0 :(得分:15)
您应该先阅读perldoc -f use
和perldoc -f require
。
它们是优秀的资源,解释了use
的工作原理,它如何调用import
然后require
,以及如何在{{1}理论上实现require
}}
如果您已经阅读过它们,那么您是否仍然有任何具体打开的问题标准文档不能很好地覆盖并且您希望得到更详细的答案?
答案 1 :(得分:11)
do
将在运行时调用代码,无ifs,ands或buts。这通常是一个坏主意,因为如果发生了这种情况,你应该把它放到一个子程序中。
require
将在运行时调用一次,然后不再调用。它也可以用于包,在这种情况下它实际上会为你找到那个包。
use
在包装箱中执行所有必需的操作,然后在该包裹中调用import
。
import
是包中定义的函数。它被use
调用,但它并不特别。
答案 2 :(得分:2)