From: Michael M Slusarz Date: Fri, 9 Jul 2010 22:02:43 +0000 (-0600) Subject: Use callback rather than preg e modifier X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=627a1c64d6a13ae37e40c1abca767377e0c98054;p=horde.git Use callback rather than preg e modifier --- diff --git a/framework/Text_Filter/lib/Horde/Text/Filter/Environment.php b/framework/Text_Filter/lib/Horde/Text/Filter/Environment.php index 385c667f0..b856ddc98 100644 --- a/framework/Text_Filter/lib/Horde/Text/Filter/Environment.php +++ b/framework/Text_Filter/lib/Horde/Text/Filter/Environment.php @@ -23,10 +23,31 @@ class Horde_Text_Filter_Environment extends Horde_Text_Filter_Base */ public function getPatterns() { - $regexp = array('/^#.*$\n/m' => '', - '/^([^#]*)#.*$/m' => '$1', - '/%([A-Za-z_]+)%/e' => 'getenv("$1")'); - return array('regexp' => $regexp); + $regexp = array( + '/^#.*$\n/m' => '', + '/^([^#]*)#.*$/m' => '$1' + ); + + $regexp_callback = array( + '/%([A-Za-z_]+)%/e' => array($this, 'regexCallback') + ); + + return array( + 'regexp' => $regexp, + 'regexp_callback' => $regexp_callback + ); + } + + /** + * Preg callback. + * + * @param array $matches preg_replace_callback() matches. + * + * @return string The replacement string. + */ + public function regexCallback($matches) + { + return getenv($matches[1]); } }