2010-03-17 73 views
0
$embedCode = <<<EOF 
getApplicationContent('video','player',array('id' => $iFileId, 'user' => $this->iViewer, 'password' => clear_xss($_COOKIE['memberPassword'])),true) 
EOF; 
$name = str_replace($embedCode,"test",$content); 

我想用另一段代碼替換一段代碼。我可以用較小的字符串做,但一旦我添加了更大的字符串$ embedCode,它拋出一個「意外T_ENCAPSED_AND_WHITESPACE」錯誤如何str_replace的一段PHP代碼

+0

你爲什麼想這樣做? – 2010-03-17 00:46:51

回答

0

你應該ü在$使用\$

$embedCode = <<<EOF 
    getApplicationContent('video','player',array('id' => \$iFileId, 'user' => \$this->iViewer, 'password' => clear_xss(\$_COOKIE['memberPassword'])),true) 
EOF; 

,如果你的目標是使用增值經銷商的名字,如果你想使用的變量的實際價值nescape,那麼問題是在這 - $> iViewer ...

+0

實際上問題出在'$ _COOKIE不在$ this-> iViewer中,正如你所說的 – zerkms 2010-03-17 01:13:18

0

刪除「圍繞memberPassword近$ _COOKIE

反正好像你正在尋找語言結構,不是裏面解釋變量 - 是的話,你必須使用不定界符 - 但普通字符串定義限制與'

$sample = 'qwe $asd zxc'; 

或\ $逃脫作爲Marcx提出以下