質問

$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」エラーをスローします。

役に立ちましたか?

解決

あなたは$を使用して\$をアンエスケープする必要があります。

$embedCode = <<<EOF
    getApplicationContent('video','player',array('id' => \$iFileId, 'user' => \$this->iViewer, 'password' => clear_xss(\$_COOKIE['memberPassword'])),true)
EOF;
あなたの目的はあなたが変数の実際の値を使用したい場合は、VARS名を使用するために、

である場合、問題がでているの$ this - > iViewer ...

他のヒント

$ _COOKIE近くmemberPassword周りの削除 '

あなたがいないヒアドキュメント構文を使用する必要がありますので、その後 - -

とにかくあなたが内部の変数を解釈していない言語の建設を探しているようだ「との限定されたが、通常の文字列の定義を

$sample = 'qwe $asd zxc';
Marcxは、

の下に提案すると

や\で$をエスケープ

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top