perl – 如何在Template Toolkit中处理包含非法标识符字符的散列键?

前端之家收集整理的这篇文章主要介绍了perl – 如何在Template Toolkit中处理包含非法标识符字符的散列键?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在模板工具包中,如果我有以下包含一个hashref的变量:
[% 
   artist = {
     'life-span' => '1975 to 1987',}
%]

在“生命周期”中输出数据的最佳方式是什么?

我努力了…

[% artist.life-span %]

^因连字符失败.

[% artist.'life-span' %]

^因为语法不正确而失败.

[% lifespan = 'life-span' %]
[% artist.$lifespan %]

^这是有效的,但在一个大量的数据应用程序是不切实际的.

有没有更好的办法?

我正在开发的项目是一个基于Catalyst的Web应用程序,数据来自许多不同的外部Web服务,所以我不控制散列键的名称.我想我可以预处理Perl中的数据,重新命名问题哈希键,然后再给TT,但这似乎是一个非常糟糕的解决办法.

解决方法

您可以使用 item vmethod:[%artist.item(‘life-span’)%].

猜你在找的Perl相关文章