php 字符串中含有变量,怎么将变量变成常量?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 字符串中含有变量,怎么将变量变成常量?相关的知识,希望对你有一定的参考价值。

比如字符串“[size=12pt]",12是个变量,也可能是18,也可能是16,我想把它变成14pt的常量,要怎么写?

你应该说字符串替换,而不是常量,完全两码事

用正则preg_replace()函数可以替换

<?php
preg_replace('/\\[size=[0-9]+?pt\\]/','[size=14pt]',$str);
?>

参考技术A define('FontSize','14pt')

追问

谢谢你的解答,我是想要一段字符串替换的写法,就是把字符串中所有的”[size=变量pt]",替换成“[size=14pt]”,请指教。

php 把字符串变成一个变量

我先写了一个xml文件,在里面某个元素定义了,一个page属性,在另一个php页面我希望实现点击了不同的目录,就输出不同的变量,这里变量来自page属性,但是输出来的却是一个字符串,怎么样把这个字符串变成一个变量?一下是xml文档里的内容:
<g>
<action>
<name pd='news'>新闻模块</name>

<action>
<name pd='index'>新闻视图</name>
<link en="p" page="$news_p"><![CDATA[index.php?admin=admin&c=news&a=index&news_p=]]></link>
</action>
<action>
<name pd='add'>新闻添加</name>
<link en="pertotal"><![CDATA[index.php?admin=admin&c=news&a=add&pertotal=]]></link>
</action>
</action>
<action>
<name pd='category'>无极分类模块</name>

<action>
<name pd='index'>分类视图</name>
<link en="p" page="wj_p"><![CDATA[index.php?admin=admin&c=category&a=index&p=]]></link>
</action>
<action>
<name pd='add'>分类添加</name>
<link en="pertotal"><![CDATA[index.php?admin=admin&c=category&a=add&pertotal=]]></link>
</action>

</action>
<action>
<name pd='user'>管理员模块</name>

<action>
<name pd='index'>管理员视图</name>
<link en="p" page="$user_p"><![CDATA[index.php?admin=admin&c=user&a=index&user_p=]]></link>
</action>
<action>
<name pd='add'>管理员添加</name>
<link en="pertotal"><![CDATA[index.php?admin=admin&c=user&a=add&pertotal=]]></link>
</action>
</action>

</g>
下面是我HTML文件的php代码:
<li><a href="<?php echo $value2->link;if($value2->link->attributes()->en=='p')echo $value2->link->attributes()->page;elseecho $pertotal; ?>" >
</a></li>

但是$value2->link->attributes()->page是一个字符串,页面上不将它解析为一个变量。
怎么才能将这个变为一个变量。

参考技术A 使用$$str就可以了吧?
$str =value2->link->attributes()->page;
echo $$str;本回答被提问者采纳

以上是关于php 字符串中含有变量,怎么将变量变成常量?的主要内容,如果未能解决你的问题,请参考以下文章

php 把字符串变成一个变量

php当中,如何将数组合并成变量呢?

字符型变量/常量

字符型变量/常量

PHP常量字符串变量

如何将一个字符串常量赋值给一个STRING变量?