首页 >后端开发 >php教程 >PHP,变量里含有变量!

PHP,变量里含有变量!

WBOY
WBOY原创
2016-06-23 14:21:53981浏览

php 变量

$mcontent 的内容是“ dear:{$user['username']}   你购买的商品:{$goods_name},订单号{$goods_no}已下单成功,由于此商品近期销售火爆,请及时付款!  ”


其中里面的也是变量,可以我 echo $mcontent;  输不出里的变量,请问大神要怎么做!!!

回复讨论(解决方案)

把程序段贴出来看看

字符串和变量之间要用.来连接
你试试这样
$mcontent = "dear:{".$user['username']."}   你购买的商品:{".$goods_name."},订单号{".$goods_no."}已下单成功,由于此商品近期销售火爆,请及时付款!";

内容是从数据库里读出来的,楼上的不行,你的方法,我也想过,直接在代码里还行,从数据库里读出来的不行!

		$query=new IQuery('msg_template');		$query->limit="1";		$query->where="id = 4";		$arra=$query->find();		$mtitle=$arra[0]['title'];		$mopen=$arra[0]['open'];		$mcontent=$arra[0]['content'];		$madmin_open=$arra[0]['admin_open'];		if($madmin_open==1){		$madmin_email=$arra[0]['admin_email'];		}     //$mcontent = "dear:{".$user['username']."}   你购买的商品:{".$goods_name."},订单号{".$goods_no."}已下单成功,由于此商品近期销售火爆,请及时付款!";	if($mopen==1){						$smtp  = new SendMail();		    $error = $smtp->getError();			$smtp->send($email,$mtitle,$mcontent,$madmin_email);	}

$content = "dear:{$user[username]}  你购买的商品:{$goods_name},订单号{$goods_no}已下单成功,由于此商品近期销售火爆,请及时付款!";
EOF;
echo $content;

楼上的也不行!!!!

楼上的也不行!!!!

你单独把这几个变量输出来看看什么情况


看不到源码啊...都不知道你的$mcontent 里的那些值是怎么来的~~~只能一个一个的打印啊.

//模拟从数据库中读出的数据$mcontent =<<< 'TXT'dear:{$user['username']}   你购买的商品:{$goods_name},订单号{$goods_no}已下单成功,由于此商品近期销售火爆,请及时付款!TXT;//涉及的变量需自行保证存在$user['username'] = 'body';$goods_name = 'xxx';$goods_no = '123';//方案一 不过有不少人恐惧 eval$mcontent = eval("return \"$mcontent\";");echo $mcontent;//方案二 动态创建函数,格式有点绕人$f = create_function('$user,$goods_name,$goods_no', "return \"$mcontent\";");$mcontent = $f($user, $goods_name, $goods_no);echo $mcontent;//或$f = create_function('$user,$goods_name,$goods_no', 'return "' . $mcontent . '";');$mcontent = $f($user, $goods_name, $goods_no);echo $mcontent;//方案三 模板变量替换,这是解释型模板引擎的做法$mcontent = preg_replace('/{\$[^}]+}/e', '$1', $mcontent);echo $mcontent;
均将得到:
dear:body
   你购买的商品:xxx,订单号123已下单成功,由于此商品近期销售火爆,请及时付款!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn