libapa...2::Util(3pm)

πŸ’– NAME πŸ’–

Apache2::Util β€” the Perl API for Misc Apache Utility functions πŸ› οΈβœ¨ (yes bestie, misc, because they're the little helpers that didn't fit anywhere else and honestly? they're thriving)


🌸 Synopsis 🌸

use Apache2::Util ();

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

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

πŸ¦‹ Description πŸ¦‹

Various Apache utilities that don't fit into any other group. It's giving "odds and ends drawer, but make it functional" πŸŽ€


✨ Functions API ✨

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

🌈 escape_path

Convert an OS path to a URL in an OS dependent way. Very "I speak every filesystem's love language" of it πŸ’…

$escaped_path = Apache2::Util::escape_path($path, $p);
$escaped_path = Apache2::Util::escape_path($path, $p, $partial);
  • arg1: $path ( string ) β€” the path to convert
  • arg2: $p ( <pink>APR::Pool</pink> ) β€” the pool to allocate from
  • opt arg3: $partial ( boolean ) β€” okay so here's the tea:
    • 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: 2.0.00 ⭐

πŸ’œ ht_time

Convert time from an integer value into a string in a specified format. Literally timestamp glow-up 😭✨

$time_str = Apache2::Util::ht_time($p);
$time_str = Apache2::Util::ht_time($p, $time);
$time_str = Apache2::Util::ht_time($p, $time, $fmt);
$time_str = Apache2::Util::ht_time($p, $time, $fmt, $gmt);
  • arg1: $p ( <pink>APR::Pool object</pink> ) β€” 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: 2.0.00 ⭐

πŸŽ€ Examples:

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

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

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

my $time = time+100;
$fmtdate = Apache2::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 = Apache2::Util::ht_time($r->pool, $r->request_time, $fmt, 0);

πŸ‘‘ See Also πŸ‘‘

mod_perl 2.0 documentation. (iykyk πŸ“š)


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. (main character energy across the board, no cap πŸ’…)


This page ships with perl v5.42.3, dated 2026-08-20 β€” and that's the vibe check, bestie. Go escape some paths. Slay. πŸ¦‹πŸ’–
πŸ“¦ where this page comes from