From b08ad7b7201414ee9823d7e36e9c3e38b8a98663 Mon Sep 17 00:00:00 2001 From: Marko Heijnen Date: Fri, 17 Jul 2015 11:33:14 +0000 Subject: [PATCH] Replace lambda function in Google translate plugin. Props GregRoss See #305 Fixes #456 --- plugins/google-translate/google-translate.php | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/plugins/google-translate/google-translate.php b/plugins/google-translate/google-translate.php index d95b8c7c7..c34373527 100644 --- a/plugins/google-translate/google-translate.php +++ b/plugins/google-translate/google-translate.php @@ -205,10 +205,17 @@ public function google_translate_batch( $locale, $strings ) { } public function google_translate_fix( $string ) { - $string = preg_replace_callback( '/% (s|d)/i', lambda( '$m', '"%".strtolower($m[1])' ), $string ); - $string = preg_replace_callback( '/% (\d+) \$ (s|d)/i', lambda( '$m', '"%".$m[1]."\\$".strtolower($m[2])' ), $string ); + $string = preg_replace_callback( '/% (s|d)/i', function( $m ) { + return "%" . strtolower( $m[1] ); + }, $string ); + + $string = preg_replace_callback( '/% (\d+) \$ (s|d)/i', function( $m ) { + return "%" . $m[1] . "\\$" . strtolower( $m[2] ); + }, $string ); + return $string; } + } GP::$plugins->gp_google_translate = new GP_Google_Translate; \ No newline at end of file