首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP -替换php公式

PHP -替换php公式
EN

Stack Overflow用户
提问于 2014-06-16 16:46:02
回答 2查看 84关注 0票数 0

我正试图找到一种最佳的方法,用调用数组来替换代码字符串中的所有PHP变量,如下所示。

例如源代码字符串

代码语言:javascript
运行
复制
$random_var_name + $random_var_name2 * $diff_var_name3

转化成

代码语言:javascript
运行
复制
$varArray["random_var_name"] + $varArray["random_var_name2"] * $varArray["diff_var_name3"]

我原以为preg_replace()是最优的解决方案,但困难在于需要用搜索模式的一个子部分来替换。

也许最好用preg_match检索所有变量,编辑/包装它们,然后为每个变量执行一个str_replace()

然而,这可能要慢得多。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-06-16 17:21:31

下面的regex应该按照您的要求执行:

preg_replace('/\$([a-zA-Z_0-9]+)/', '$varArray["$1"]', $input_string);

票数 1
EN

Stack Overflow用户

发布于 2014-06-17 07:22:59

为了避免将$var['foo']更改为$varArray["var"]['foo'],您必须检查变量名后面没有[字符。为此,请使用消极前瞻

代码语言:javascript
运行
复制
$string = preg_replace('/\$(\w+)(?![\w\[])/', '$varArray["$1"]', $string);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24248481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档