The main focus is in the upload/includes/cls_template.php file: 1:line 300: Original statement: Return Preg_replace ("/{([^\}\{\n]*)}/e", "\ $this->select (' \\1 ');", $source); Modified to: Return Preg_replace_callback ("/{([^\}\{\n]*)}/", function ($r) {return $this->select ($r [1]);}, $source); 2:line 495: Original statement: $out = " Modified to: $replacement = Preg_replace_callback ("/(\ ' \\$[^,]+)/", function ($matcher) { Return Stripslashes (Trim ($matcher [1], ' \ ')); }, Var_export ($t, true)); $out = " 3:line 554: zuimoban.com reprint without URL, wood JJ Original statement: $val = Preg_replace ("/\[([^\[\]]*) \]/eis", "'. '). Str_replace (' $ ', ' \$ ', ' \\1 ') ", $val); Modified to: $val = Preg_replace_callback ("/\[([^\[\]]*) \]/is", function ($matcher) { Return '. '. Str_replace (' $ ', ' \$ ', $matcher [1]); }, $val); 4:line 1071: Original statement: $replacement = "' {include file= '. Strtolower (' \\1 '). '} '; $source = Preg_replace ($pattern, $replacement, $source); Modified to: $source = Preg_replace_callback ($pattern, function ($matcher) { return ' {include file= '. Strtolower ($matcher [1]). '}'; },
$source);
Original address: http://www.moke8.com/article-10688-1.html
The above describes the Ecshop modifier preg_replace/e unsafe Changes, including aspects of the content, you want to be interested in the PHP tutorial friends helpful.