http://www.perlmonks.org?node_id=395815

Seumas has asked for the wisdom of the Perl Monks concerning the following question:

In mucking around with some PHP scripts, I noticed authors frequently set aside a file for language/text values. That is, rather than editing templates directly, they have a single file that contains entries like the following:
$GLOBALS['strCliDeactivated'] = "Currently not active"; $GLOBALS['strNotActive'] = "date has not yet been reached"; $GLOBALS['strExpired'] = "date has been reached";
Then they refer to the $GLOBALS that they want to use at any particular point in a template.

I like the idea of doing this rather than having to manually edit dozens of template files individually. However, I'm not sure what ways there are to do this in perl. One obvious way is to just use something like Config::ApacheFormat and create a config object just for strings or language. That way I just edit the one file.

But what other ways are suggested? Or are there other modules that will handle this that I am unaware of? Or maybe this is a bad idea to begin with and I shouldn't try going down this road?

I use HTML::Template, though I would not be averse to eventually switching to another system at some point.