in reply to File handling? How to make the better one?
if ( system("ls -l | grep datafile.json") == 0 ) {
Sweet Jesus! Is this you trying to check whether a file exists?! You know Perl does have built-ins for checking the existence of a file...
if (-f "datafile.json") {
Using a few commodity modules from CPAN, you can make your life a lot easier...
#!/opt/lampp/bin/perl use strict; use CGI; use CGI::Carp 'fatalsToBrowser'; use File::Slurp qw< read_file write_file >; use JSON qw< from_json to_json >; use constant USER_ACCOUNT_FILE => '/opt/lampp/htdocs/datafile.json'; sub store_user_account { my ($name, $mail, $pass) = @_; my $existing_data = -f USER_ACCOUNT_FILE ? from_json(scalar read_file(USER_ACCOUNT_FILE, err_mode => 'c +roak')) : []; push @$existing_data, { name => $name, mail => $mail, pass => $pass, }; write_file( USER_ACCOUNT_FILE, { atomic => 1, err_mode => 'croak' }, to_json($existing_data), ); } sub process_cgi { my ($q) = @_; store_user_account( map { scalar $q->param($_) } qw(name mail pass), ); print $q->header('text/html'); print "<p>Finished file.</p>\n"; } process_cgi( CGI->new );
perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: File handling? How to make the better one?
by heatblazer (Scribe) on Jun 11, 2012 at 18:12 UTC |
In Section
Seekers of Perl Wisdom