package my_app::page; # file ./my_app/page.pm use strict; my @field = qw(uid name text); sub new { my $class = shift; return bless {},$class } sub init { my ($self,$dbh,$uid) = @_; my $fields = join ',',@field; my $sql = "SELECT $fields FROM pages WHERE uid =?"; my $rec = $dbh->selectrow_arrayref($sql,undef,$uid); $self->{$field[$_]} = $rec->[$_] for 0..$#field; }; sub display { my $self = shift; printf " uid : %d name : %s text : %s\n", map { $self->{$_} } @field; }; 1;