字符替换的问题

例子:$msg="aa请aa帮忙做aa...."
$b1="我"
$b2="你"
$b3="事"
......
每一次的$msg里的aa个数是不确定的
请问怎样将$b1的值替换$msg里的第1个aa,$b2的值替换$msg里的第2个aa...如此类推

---------------------------------------------------------------

例子:$msg="aa请aa帮忙鯽a...."
$b1="我"
$b2="你"
$b3="事"

$msg = str_replace("aa", "%s", $msg);
$msg = sprintf($msg, $b1, $b2, $b3);
---------------------------------------------------------------

1、
$b1="我";
$b2="你";
$b3="事";
$dict = array($b1,$b2,$b3);//组织成数组以便于操作
//回调函数
function foo() {
return array_shift($GLOBALS['dict']);
}
echo preg_replace("/(aa)/e","foo()",$msg);

2、你用%1做变量名是错误的
$a1="我";
$a2="你";
$a3="事";
$a4="球";

$msg="%s请%s帮忙做%s";
$parameter="%1,%2,%3";
$parameter = str_replace("%",'$a',$parameter);
eval("printf("$msg",$parameter);");

3、eval函数同样能解决你对hahawen(变态的大龄青年) 解答的疑问

Published At
Categories with Web编程
Tagged with
comments powered by Disqus