NAME

Apache::Util - Perl API for Misc Apache Utility functions

Synopsis

use Apache::Util ();

# OS escape path
$escaped_path = Apache::Util::escape_path($path, "a 'long' file.html");

# format time as a string
my $fmt = "%a, %D %H:%M:%S %Z";
$fmtdate = Apache::Util::ht_time($r->pool, $r->request_time, $fmt, 0);

Description

Various Apache utilities that don't fit into any other group.

Functions API

Apache::Util provides the following functions and/or methods:

escape_path

convert an OS path to a URL in an OS dependant way.

$escaped_path = Apache::Util::escape_path($path, $p);
$escaped_path = Apache::Util::escape_path($path, $p, $partial);
arg1: $path ( string )

The path to convert

arg2: $p ( APR::Pool )

The pool to allocate from

opt arg3: $partial ( boolean )

if TRUE, assume that the path will be appended to something with a '/' in it (and thus does not prefix "./")

if FALSE it prepends "./" unless $path contains : optionally followed by /.

the default is TRUE

ret: $escaped_path ( string )

The escaped path

since: 1.99_12

ht_time

Convert time from an integer value into a string in a specified format

$time_str = Apache::Util::ht_time($p);
$time_str = Apache::Util::ht_time($p, $time);
$time_str = Apache::Util::ht_time($p, $time, $fmt);
$time_str = Apache::Util::ht_time($p, $time, $fmt, $gmt);
arg1: $p ( APR::Pool object )

The pool to allocate memory from

opt arg2: $time ( number )

The time to convert (e.g., time() or $r->request_time).

If the value is not passed the current time will be used.

opt arg3: $fmt ( string )

The format to use for the conversion, using strftime(3) tokens.

If the value is not passed the default format used is:

"%a, %d %b %Y %H:%M:%S %Z"
opt arg4: $gmt ( boolean )

The time will be not converted to GMT if FALSE is passed.

If the value is not passed TRUE (do convert) is used as a default.

ret: $time_str (string)

The string that represents the specified time

since: 1.99_12

Examples:

Use current time, the default format and convert to GMT:

$fmtdate = Apache::Util::ht_time($r->pool);

Use my time, the default format and convert to GMT:

my $time = time+100;
$fmtdate = Apache::Util::ht_time($r->pool, $time);

Use the time the request has started, custom format and don't convert to GMT:

my $fmt = "%a, %D %H:%M:%S %Z";
$fmtdate = Apache::Util::ht_time($r->pool, $r->request_time, $fmt, 0);

See Also

mod_perl 2.0 documentation.

Copyright

mod_perl 2.0 and its core modules are copyrighted under The Apache Software License, Version 2.0.

Authors

The mod_perl development team and numerous contributors.