---
name: "POSIX::strptime"
section: "3pm"
platform: "linux"
package: "libposix-strptime-perl"
version: "0.13-2+b4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/POSIX::strptime"
---

# POSIX::strptime(3pm)

Perl extension to the POSIX date parsing strptime(3) function

## NAME

POSIX::strptime - Perl extension to the POSIX date parsing [strptime(3)](/strptime/3.md) function

## SYNOPSIS

```
 ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = POSIX::strptime("string", "Format");
```

## DESCRIPTION

Perl interface to [**strptime**(3)](/strptime/3.md)

## FUNCTIONS

- strptime

  ```
   ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday) = POSIX::strptime(string, format);
  ```

  The result for any value not extracted is not defined. Some platforms may reliably return `"undef"`, but this is dependent on the `strptime(3)` function in the underlying C library.

  For example, only the following fields may be relied upon:

  ```
   my ($min, $hour) = ( POSIX::strptime( "01:23", '%H:%M' ) )[1,2];

   my ($mday, $mon, $year) = ( POSIX::strptime( "2010/07/16", '%Y/%m/%d' ) )[3,4,5];
  ```

  Furthermore, not all platforms will set the `$wday` and `$yday` elements. If these values are required, use `"mktime"` and `"gmtime"`:

  ```
   use POSIX qw( mktime );
   use POSIX::strptime qw( strptime );
   my ($mday, $mon, $year) = ( POSIX::strptime( "2010/07/16", '%Y/%m/%d' ) )[3,4,5];
   my $wday = ( gmtime mktime 0, 0, 0, $mday, $mon, $year )[6];
  ```

## SEE ALSO

[**strptime**(3)](/strptime/3.md)

## AUTHOR

Philippe M. Chiasson \<gozer@cpan.org\> Kim Scheibel \<kim@scheibel.co.uk\>

## REPOSITORY

http://svn.ectoplasm.org/projects/perl/POSIX-strptime/trunk/

## COPYRIGHT

Copyright 2005 by Philippe M. Chiasson \<gozer@cpan.org\>.

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

See *http://www.perl.com/perl/misc/Artistic.html*
