想在php中传递字符串变量中的变量

时间:2013-04-24 12:11:12

标签: php arrays string variables

我想在字符串中传递变量,以便稍后在脚本值中分配它。

$message="hi $(name) your salary $(salary) is credited in your XYZ account";
foreach($arrmsgvar as $key => $value){  
    $temp=array_search($value[1],$upfileformat);        
    if($temp){
       $replacement='$row['.$temp.']';
       $message=str_replace($value[0],$replacement,$message);   
    }
 }

我收到字符串“hi $ row [1]你的工资$ row [2]在你的XYZ账户中存入”  $消息

$xdata="";
foreach($Spreadsheet as $key => $row){  
   $xdata.= "`$memid`|`$source`|`$mobile`|`$message`|`0`|`$msgid`||";
}
echo $xdata;

并获取1 | 2 | 12345678 | hi $row[1] your salary $row[2] is credited in your XYZ account | 0 | 4 || < strong>,在$ xdata

如何在$ xdata最终输出中获得$ row数组的值?谁会告诉我    一种方法吗?

2 个答案:

答案 0 :(得分:2)

$messages = array();
$message  = "hi %s your salary %d is credited in your %s account";
foreach ($arrmsgvar as $key => $value){  
  $temp = array_search($key, $upfileformat);
  if ($temp !== false) {
    $messages[$key] = sprintf($message, $name, $salary, $account);
  }
}
var_dump($messages);

我并不完全确定从哪里来的一些变量 上面的代码将为您提供有关如何实现sprintf值的建议 $name$salary$account可以替换为文本值应该是什么。

http://php.net/manual/en/function.sprintf.php

答案 1 :(得分:0)

请使用sprintf

,而不是使用自己的字符串替换