Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Robson Silva

[Resolvido] Problema com aspas simples, duplas e variáveis

Recommended Posts

Boa noite.

 

Estou com uma dúvida referente a aspas simples.

 

Sei que quando uso aspas duplas e coloco uma variável no meio, o php imprime.

Com aspas simples ele não faz isso.

 

Ex:

 

$teste = 'Hello World';

 

$texto = "$teste";

 

echo $texto; (Vai imprimir Hello World)

 

 

$texto = '$teste';

 

echo $texto; (Vai imprimir $teste)

 

 

O que eu preciso é colocar a variável em aspas simples como no exemplo

$texto = '$teste'; e de alguma forma transformar estas aspas simples em duplas (strreplace, addslashes, etc não vai dar certo) para escrever a variável, ficando assim:

 

$texto = '$teste';

$texto = funcaodophp($texto);

 

echo $texto;

 

Deverá imprimir Hello World na tela.

 

 

Se tiver algum jeito, agradeço.

 

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, vou explicar com um exemplo

 

Eu tenho uma classe com uma variável chamada html, preciso acessar essa variável e atribuir um html para ela, e esse html possui N variáveis.

 

classe Html
{
   private $html;

   public function setHtml($html)
   {
      $nome = 'João';
      $data = '2010-01-02 22:36:01';
      $this->html = $html;
   }

   public getHtml()
   {
      return $this->html;
   }
}

class Teste
{
   public function __construct()
   {
      $html = new Html();
      $html->setHtml('Olá $nome, seu último acesso foi em $data');
   }
}

Claro, este é um exemplo fictício.

Se eu colocar aspas duplas, ele vai dizer que não existe as variáveis.

E com aspas simples ele não acha, preciso que retorne

Olá João, seu último acesso foi em 2010-01-02 22:36:01

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para falar a verdade, ainda não entendi. Não vi onde o eval vai entrar. Mas se resolveu, ótimo.

 

Só uma sugestão: evite colocar variáveis dentro de strigs. Use concatenação. Isso facilita muita a leitura de códigos, além de ser um padrão da maioria das outras linguagens. Por exemplo, faça assim:

 

$html->setHtml( 'Olá ' . $nome . ', seu último acesso foi em ' . $data );

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.