Data::Random.3pm

Langue: en

Version: 2003-02-22 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Data::Random - Perl module to generate random data

SYNOPSIS

   use Data::Random qw(:all);
   
   my @random_words = rand_words( size => 10 );
     
   my @random_chars = rand_chars( set => 'all', min => 5, max => 8 );
   
   my @random_set = rand_set( set => \@set, size => 5 );
   
   my $random_enum = rand_enum( set => \@set );
   
   my $random_date = rand_date();
   
   my $random_time = rand_time();
     
   my $random_datetime = rand_datetime();
   
   open(FILE, ">rand_image.png") or die $!;
   binmode(FILE);
   print FILE rand_image( bgcolor => [0, 0, 0] );
   close(FILE);
 
 

DESCRIPTION

A module used to generate random data. Useful mostly for test programs.

METHODS

rand_words()

This returns a list of random words given a wordlist. See below for possible parameters.
*
wordlist - the path to the wordlist file. A lot of systems have one at /usr/dict/words. You can also optionally supply a Data::Random::WordList object to keep a persistent wordlist. The default is the wordlist distributed with this module.
*
min - the minimum number of words to return. The default is 1.
*
max - the maximum number of words to return. The default is 1.
*
size - the number of words to return. The default is 1. If you supply a value for 'size', then 'min' and 'max' aren't paid attention to.
*
shuffle - whether or not the words should be randomly shuffled. Set this to 0 if you don't want the words shuffled. The default is 1. Random::Data::WordList returns words in the order that they're viewed in the word list file, so shuffling will make sure that the results are a little more random.

rand_chars()

This returns a list of random characters given a set of characters. See below for possible parameters.
*
set - the set of characters to be used. This value can be either a reference to an array of strings, or one of the following:
     alpha        - alphabetic characters: a-z, A-Z
     upperalpha   - upper case alphabetic characters: A-Z
     loweralpha   - lower case alphabetic characters: a-z
     numeric      - numeric characters: 0-9
     alphanumeric - alphanumeric characters: a-z, A-Z, 0-9
     char         - non-alphanumeric characters: # ~ ! @ $ % ^ & * ( ) _ + = - { } | : " < > ? / . ' ; ] [ \ `
     all          - all of the above
 
 
*
min - the minimum number of characters to return. The default is 0.
*
max - the maximum number of characters to return. The default is the size of the set.
*
size - the number of characters to return. The default is 1. If you supply a value for 'size', then 'min' and 'max' aren't paid attention to.
*
shuffle - whether or not the characters should be randomly shuffled. Set this to 0 if you want the characters to stay in the order received. The default is 1.

rand_set()

This returns a random set of elements given an initial set. See below for possible parameters.
*
set - the set of strings to be used. This should be a reference to an array of strings.
*
min - the minimum number of strings to return. The default is 0.
*
max - the maximum number of strings to return. The default is the size of the set.
*
size - the number of strings to return. The default is 1. If you supply a value for 'size', then 'min' and 'max' aren't paid attention to.
*
shuffle - whether or not the strings should be randomly shuffled. Set this to 0 if you want the strings to stay in the order received. The default is 1.

rand_enum()

This returns a random element given an initial set. See below for possible parameters.
*
set - the set of strings to be used. This should be a reference to an array of strings.

rand_date()

This returns a random date in the form ``YYYY-MM-DD''. 2-digit years are not currently supported. Efforts are made to make sure you're returned a truly valid date---ie, you'll never be returned the date February 31st. See the options below to find out how to control the date range. Here are a few examples:
     # returns a date somewhere in between the current date, and one year from the current date
     $date = rand_date();    
     
     # returns a date somewhere in between September 21, 1978 and September 21, 1979
     $date = rand_date( min => '1978-9-21' );
     
     # returns a date somewhere in between September 21, 1978 and the current date
     $date = rand_date( min => '1978-9-21', max => 'now' );
     
     # returns a date somewhere in between the current date and September 21, 2008
     $date = rand_date( min => 'now', max => '2008-9-21' );
 
 

See below for possible parameters.

*
min - the minimum date to be returned. It should be in the form ``YYYY-MM-DD'' or you can alternatively use the string ``now'' to represent the current date. The default is the current date;
*
max - the maximum date to be returned. It should be in the form ``YYYY-MM-DD'' or you can alternatively use the string ``now'' to represent the current date. The default is one year from the minimum date;

rand_time()

This returns a random time in the form ``HH:MM:SS''. 24 hour times are supported. See the options below to find out how to control the time range. Here are a few examples:
     # returns a random 24-hr time (between 00:00:00 and 23:59:59)
     $time = rand_time();    
     
     # returns a time somewhere in between 04:00:00 and the end of the day
     $time = rand_time( min => '4:0:0' );
     
     # returns a time somewhere in between 8:00:00 and the current time (if it's after 8:00)
     $time = rand_time( min => '12:00:00', max => 'now' );
     
     # returns a date somewhere in between the current time and the end of the day
     $time = rand_time( min => 'now' );
 
 

See below for possible parameters.

*
min - the minimum time to be returned. It should be in the form ``HH:MM:SS'' or you can alternatively use the string ``now'' to represent the current time. The default is 00:00:00;
*
max - the maximum time to be returned. It should be in the form ``HH:MM:SS'' or you can alternatively use the string ``now'' to represent the current time. The default is 23:59:59;

rand_datetime()

This returns a random date and time in the form ``YYYY-MM-DD HH:MM:SS''. See the options below to find out how to control the date/time range. Here are a few examples:
     # returns a date somewhere in between the current date/time, and one year from the current date/time
     $datetime = rand_datetime();
     
     # returns a date somewhere in between 4:00 September 21, 1978 and 4:00 September 21, 1979
     $datetime = rand_datetime( min => '1978-9-21 4:0:0' );
     
     # returns a date somewhere in between 4:00 September 21, 1978 and the current date
     $datetime = rand_datetime( min => '1978-9-21 4:0:0', max => 'now' );
     
     # returns a date somewhere in between the current date/time and the end of the day September 21, 2008
     $datetime = rand_datetime( min => 'now', max => '2008-9-21 23:59:59' );
 
 

See below for possible parameters.

*
min - the minimum date/time to be returned. It should be in the form ``YYYY-MM-DD HH:MM:SS'' or you can alternatively use the string ``now'' to represent the current date/time. The default is the current date/time;
*
max - the maximum date/time to be returned. It should be in the form ``YYYY-MM-DD HH:MM:SS'' or you can alternatively use the string ``now'' to represent the current date/time. The default is one year from the minimum date/time;

rand_image()

This returns a random image. Currently only PNG images are supported. See below for possible parameters.
*
minwidth - the minimum width of the image. The default is 1.
*
maxwidth - the maximum width of the image. The default is 100.
*
width - the width of the image. If you supply a value for 'width', then 'minwidth' and 'maxwidth' aren't paid attention to.
*
minheight - the minimum height of the image. The default is 1.
*
maxheight - the maximum height of the image. The default is 100.
*
height - the height of the image. If you supply a value for 'width', then 'minwidth' and 'maxwidth' aren't paid attention to.
*
minpixels - the minimum number of random pixels to display on the image. The default is 0.
*
maxpixels - the maximum number of random pixels to display on the image. The default is width * height.
*
pixels - the number of random pixels to display on the image. If you supply a value for 'pixels', then 'minpixels' and 'maxpixels' aren't paid attention to.
*
bgcolor - the background color of the image. The value must be a reference to an RGB array where each element is an integer between 0 and 255 (eg. [ 55, 120, 255 ]).
*
fgcolor - the foreground color of the image. The value must be a reference to an RGB array where each element is an integer between 0 and 255 (eg. [ 55, 120, 255 ]).

VERSION

0.05

AUTHOR

Adekunle Olonoh, koolade@users.sourceforge.net

CREDITS

Hiroki Chalfant David Sarno Copyright (c) 2000 Adekunle Olonoh. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Data::Random::WordList

POD ERRORS

Hey! The above document had some coding errors, which are explained below:
Around line 600:
=back doesn't take any parameters, but you said =back 4
Around line 637:
=back doesn't take any parameters, but you said =back 4
Around line 666:
=back doesn't take any parameters, but you said =back 4
Around line 679:
=back doesn't take any parameters, but you said =back 4
Around line 710:
=back doesn't take any parameters, but you said =back 4
Around line 741:
=back doesn't take any parameters, but you said =back 4
Around line 772:
=back doesn't take any parameters, but you said =back 4
Around line 825:
=back doesn't take any parameters, but you said =back 4