I Heart Strings

It’s not any different, it just supports a zillion more output formats. Unfortunately, it doesn’t support named value key/pair substitution as shown in Ruby and PHP via previous commenters…