87得票3回答
将 preg_replace() 函数中的 e 修饰符替换为 preg_replace_callback()。

我不擅长正则表达式。我正在尝试替换这个:public static function camelize($word) { return preg_replace('/(^|_)([a-z])/e', 'strtoupper("\\2")', $word); } 使用preg_replac...

48得票1回答
使用 preg_replace_callback 替换已弃用的 preg_replace /e 函数

$result = preg_replace( "/\{([<>])([a-zA-Z0-9_]*)(\?{0,1})([a-zA-Z0-9_]*)\}(.*)\{\\1\/\\2\}/iseU", "CallFunction('\\1','\\2','\\3','...

42得票2回答
如何使用 preg_replace_callback?

我有以下的 HTML 语句[otsection]Wallpapers[/otsection] WALLPAPERS GO HERE [otsection]Videos[/otsection] VIDEOS GO HERE 我想要做的是将[otsection]标记替换为html div。但是有...

18得票7回答
Symfony 1.4在PHP 5.5中使用了被弃用的函数

我最近将PHP从版本5.3.27升级到了5.5.0。 在我的Symfony2.3.2项目中一切都运行良好,我可以享受最新的PHP功能。 现在当我回到我的其他Symfony1.4.16项目时,我会收到一个关于preg_replace具有/e修饰符已被弃用的PHP错误。 我在论坛上找不到关于这...

16得票2回答
如何在preg_replace_callback函数中访问变量?

我试图用传递的数组中的值替换$text中的{{key}}项,但是当我尝试添加print_r以查看发生了什么时,我得到了一个Undefined variable: kvPairs错误。如何从preg_replace_callback内部访问我的变量?public function replace...

12得票6回答
如何在同一文件中编写多个版本的PHP代码而不出错?

我正在尝试使用version_compare在一个文件中支持两个版本的一些PHP代码,但是我仍然遇到错误。 代码:if (version_compare(PHP_VERSION, '5.3.0') >= 0) { $alias = preg_replace_callback('...

9得票3回答
preg_replace_callback回调函数中是否有一种方法可以传递另一个参数?

大家好,我希望我的英语足够好,能够解释清楚我的需求。 让我们来看这个代码示例(仅为示例): class Something(){ public function Lower($string){ return strtolower($string); } } ...

8得票1回答
PHP7 - /e修饰符不再被支持,使用preg_replace_callback代替

有人能帮我解决这个错误吗? 警告:preg_replace():不再支持/e修饰符,请改用preg_replace_callback 我的原始代码: $match[1] = preg_replace('/(?<=^|[\x09\x20\x2D])./e', 'strtouppe...

7得票4回答
preg_replace使用模式作为替换数据数组的索引

我想知道在使用preg_replace时是否有一种简单的方法可以将匹配的模式作为替换值数组的索引。 例如: preg_replace("/\{[a-z_]*\}/i", "{$data_array[\1]}", $string); 搜索 {xxx} 并将其替换为 $data_array...