ホームページ >バックエンド開発 >PHPチュートリアル >PHPの基本的な問題、助けてください! ! ! ! ! !

PHPの基本的な問題、助けてください! ! ! ! ! !

WBOY
WBOYオリジナル
2016-06-23 14:17:301233ブラウズ

是这样的:我从mysql数据库中查询除了一条记录,这个记录里面包含了 {$aaa}、{$bbb}等变量,
现在想在输出前给这两个变量赋值,但是输出的结果还是变量。。。。
例如:
$rs_sql =mysql_query("select content from table where  id ='1'");
$row_rs_sql = mysql_fetch_array($rs_sql);
//////content字段的内容是: 您好 {$aaa},好久不见了,我是想你的{$bbb}! ///////

$aaa = "刘德华";
$bbb = "林心如";

echo $row_rs_sql['content'];
////我想要的结果是:您好刘德华,好久不见了,我是想你的林心如!

可现在的输出的结果却还是:您好 {$aaa},好久不见了,我是想你的{$bbb}!

请问大家这个问题怎么解决啊,很急!!!



回复讨论(解决方案)

echo "$row_rs_sql['content']";

echo preg_replace('/\{\$(\w+)\}/e','$$1',$row_rs_sql['content']);

是这样的:我从mysql数据库中查询除了一条记录,这个记录里面包含了 {$aaa}、{$bbb}等变量,
现在想在输出前给这两个变量赋值,但是输出的结果还是变量。。。。
例如:
$rs_sql =mysql_query("select content from table where  id ='1'");
$row_rs_sql = mysql_fetch_array($rs_sql);
//////content字段的内容是: 您好 {$aaa},好久不见了,我是想你的{$bbb}! ///////

$aaa = "刘德华";
$bbb = "林心如";

echo $row_rs_sql['content'];
////我想要的结果是:您好刘德华,好久不见了,我是想你的林心如!

可现在的输出的结果却还是:您好 {$aaa},好久不见了,我是想你的{$bbb}!

请问大家这个问题怎么解决啊,很急!!!
content字段的内容是: 您好 {$aaa},好久不见了,我是想你的{$bbb}! 你这里面的$aaa是字符串啊,不是变量形式的,所以要替换下,用$row_rs_sql = str_replace('{$aaa}',$aaa);$row_rs_sql = str_replace('{$bbb}',$bbb); echo $row_rs_sql;

不要用str_replace(), 参考 php eval()函数 http://php.net/manual/en/function.eval.php

$str = $row_rs_sql['content'];eval("\$str = \"$str\";");echo $str;

四楼的方法最简单,最实用

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。