【发布时间】:2017-01-05 18:39:49
【问题描述】:
如何更改以下代码 preg_replace(在 PHP 5.6 中已弃用):
$ Encoded = preg_replace ('/ ([\ 000- \ 011 \ 013 \ 014 \ 016- \ 037 \ 075 \ 077 \ 137 \ 177- \ 377]) / and',
"'='. Sprintf ('% 02X', ord ('\\ 1'))", $ encoded);
与preg_replace_callback?
【问题讨论】:
-
能否正确格式化?还请提供一个示例字符串。
-
试试
$encoded = preg_replace_callback('/([\000-\011\013\014\016-\037\075\077\137\177-\377])\/and/', function($m) { return '='. sprintf('%02X', ord($m[1])); }, $encoded); -
优秀的 Wiktor,现在看起来一切正常。非常感谢!
标签: php regex preg-replace