1
在添加TO_JSON方法(轉換經由JSON.pm一個幸福的引用)到CGI ::曲奇如果我這樣做:非常奇怪的perl語法錯誤添加TO_JSON方法打包
package CGI::Cookie;
sub TO_JSON {
return {
map { name => $_->name,
value => $_->value,
domain => $_->domain,
path => $_->path,
expires => $_->expires }
shift
}
}
語法錯誤在XXX.pm線76,在XXX.pm 線77附近的「移位」語法錯誤,接近「}」編譯失敗在(EVAL 50)第3行
要求,但如果我這樣做:
package CGI::Cookie;
sub TO_JSON {
return {
map { ''.'name' => $_->name,
value => $_->value,
domain => $_->domain,
path => $_->path,
expires => $_->expires }
shift
}
}
它的工作
不能爲我的生活找出原因。也只是引用「名稱」沒有幫助。我必須連接一個空字符串才能工作。
我很迷惑。
感謝。非常奇怪,儘管由於codeblock應該是map()的首選參數,所以我認爲這將是Perl會首先假設的。 這也適用: 包CGI :: Cookie; 子TO_JSON { 返回{ 地圖{;命名=> $ _->名, 值=> $ _->值, 域=> $ _->域, 路徑=> $ _->路徑, expires => $ _-> expires} shift } } –