Pregunta

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

Estoy tratando de reemplazar una sección de código con otra pieza de código. Puedo hacerlo con cadenas más pequeñas, pero una vez que he añadido las cadenas más grandes a $ embedCode, se generará un error "inesperado T_ENCAPSED_AND_WHITESPACE"

¿Fue útil?

Solución

debe unescape la $ usando \$

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

Si su objetivo es usar el nombre VARs, si desea utilizar el valor real de las variables, entonces el problema está en $ this-> iViewer ...

Otros consejos

Eliminar 'alrededor de la cerca de la memberPassword $ _COOKIE

Parece que estás buscando modos para la construcción de un lenguaje que no interpreta variable dentro - es así, usted tiene que utilizar la sintaxis no heredoc - pero la definición cadena normal limitada con '

$sample = 'qwe $asd zxc';

o escapar con $ \ Marcx que proponemos a continuación

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top