Como faço para escrever o meu script para dados de saída onde eu colocar algo como isto: {name}

StackOverflow https://stackoverflow.com/questions/933463

  •  06-09-2019
  •  | 
  •  

Pergunta

eu tenho visto muitos scripts onde você vai ver algo como isto

<meta keyword="{keywords}" ...>

ou

<input type="text" name="name" value="{name}">

o que é essa chamada e como posso fazer isso eu mesmo.

graças

Nenhuma solução correta

Outras dicas

É chamado um modelo.

Você precisa de um modelo de motor ou você pode escrever um você mesmo. Há muito tempo atrás havia um modelo de motor popular chamado Smarty. Hoje, os motores de modelo são parte da maioria dos frameworks.

Aqui está uma lista de alguns motores de modelo para PHP: http://www.webresourcesdepot.com/19-promising-php-template -engines /

Considerando o fato de que você tem uma tal pergunta, o seu próprio modelo de motor mais provavelmente terá erros, então eu sugiro escolher um dos mais livremente disponíveis.

Só mais uma coisa. o PHP em si é uma espécie de modelo de motor, então você não necessariamente tem que adicionar outro nível de templates. Use PHP:

<input type="text" name="name" value="<?=$VALUES['name']?>">

i pode recomendar ...

<input type="text" name="name" value="<?= e($name) ?>">

onde e é uma função escapar

i encontrar modelo de motores desnecessário

mais exemplos ...

foreach ...

<ul>
<?php foreach( $items as $item ): ?>
    <li><?= e($item) ?><li>
<?php endforeach; ?>
</ul>

Se ....

<input type="checkbox"<?php if( $checkbox ): ?> selected="selected"<?php endif; ?>>

Não são os motores lá fora, que oferecem suporte a esse estilo de sintaxe variável, para modelos de exemplo Blitz templates ( http: //alexeyrybak.com/blitz/blitz_en.html ) vem à mente.

Eu não sei o que você quer dizer, mas deixe-me dar um palpite:

$foo = "Please replace {this} here!";
$bar = str_replace('{this}', 'that', $foo);

É claro que há uma abundância de sistemas de templates em torno de que fazem exatamente isso, só que muito mais inteligente. Então você pode querer olhar para isso.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top