DOKK / manpages / debian 12 / libdata-faker-perl / Data::Faker::DateTime.3pm.en
Data::Faker::DateTime(3pm) User Contributed Perl Documentation Data::Faker::DateTime(3pm)

Data::Faker::DateTime - Data::Faker plugin

See Data::Faker

Return a unix time (seconds since the epoch) for a random time between the epoch and now.
Return a random date as a string, using a random date format (see date_format).
Return a random time as a string, using a random time format (see time_format).
Return an RFC 822 formatted random date. This method may not work on systems using a non-GNU strftime implementation (kindly let me know if that is the case.)
Returns am or pm randomly (in the current locale) using one of the formats specified in ampm_format.
Return a random time format.
Return a random date format.
Return a random am/pm format.
Return a random date and time format.
Return a random month name, unabbreviated, in the current locale.
Return a random month name, abbreviated, in the current locale.
Return a random weekday name, unabbreviated, in the current locale.
Return a random weekday name, abbreviated, in the current locale.
Return a random date in the ISO8601 format commonly used by SQL servers (YYYY-MM-DD).
Return a datetime string in the preferred date representation for the current locale, for a random date.
Return a date string in the preferred date representation for the current locale, for a random date.
Return a time string in the preferred date representation for the current locale, for a random date.
Return a random century number.
Return a random day of the month.

Given a strftime format specifier, this method passes it through to POSIX::strftime along with a random date to display in that format.

Perl passes this through to the strftime function of your system library, so it is possible that some of the formatting tokens used here will not work on your system.

Be very careful about building date/time representations in formats that are not already listed here. For example if you wanted to get a date that consists of just the month and day, you should NOT do this:

  my $faker = Data::Faker->new();
  print join(' ',$faker->month,$faker->dayofmonth)."\n";
    

This is bad because you might end up with 'February 31' for example. Instead you should use the timestr utility function to provide you a formatted time for a valid date, or better still, write a plugin function that does it:

  my $faker = Data::Faker->new();
  print $faker->my_short_date()."\n";
  package Data::Faker::MyExtras;
  use base qw(Data::Faker);
  use Data::Faker::DateTime;
  __PACKAGE__->register_plugin(
    my_short_date => sub { Data::Faker::DateTime::timestr('%M %e') },
  );
    
See the documentation above regarding the timestr utility method for some caveats related to strftime and your system library.

Data::Faker

Jason Kohles, <email@jasonkohles.com>

Copyright 2004-2005 by Jason Kohles

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

2022-10-22 perl v5.34.0