1. Pseudo-hashes are deprecated
The "Pseudo-hashes are deprecated" error means you're trying to access an array as a hash,which means that either$data->{file}
or$data->{file}{path}
is an arrayref.
2.? defined 解释
? 用于判断变量是否为 undef,未定义, 不能用于数组和hash
Many folks tend to overuse defined
and are then surprised todiscover that the number0
and ""
(the zero-length string) are,in fact,defined values.
? 0
and ""
(the zero-length string 用 if () 来判断即可
3.? or? ||?? 和 and &&的区别
本身没有区别,习惯问题 ,但是有时候牵涉到运算符优先级的问题,结果会不同
??????????left? ?? ???&
? ?? ?? ???left? ?? ???| ^
? ?? ?? ???left? ?? ???&&
? ?? ?? ???left? ?? ???|| //
? ?? ?? ???nonassoc? ? ..??...
? ?? ?? ???right? ?? ? ?:
? ?? ?? ???right? ?? ? = += -= *= etc.
? ?? ?? ???left? ?? ???,=>
? ?? ?? ???nonassoc? ? list operators (rightward)
? ?? ?? ???right? ?? ? not
? ?? ?? ???left? ?? ???and ? ?? ?? ???left? ?? ???or xor