如何在类似smarty语法的html中调用php变量?

如何在类似smarty语法的html中调用php变量?,php,smarty,Php,Smarty,我想知道,如果我们使用smarty模板,是否有人知道如何在html代码中调用变量 <?php $var = "sometext"; ?> <html> <body> <?php echo $var ?> </body> </html> 如果我们使用smarty模板,我们可以这样做: <?php $var = "sometext"; ?> <html> <body> {$var} &l

我想知道,如果我们使用smarty模板,是否有人知道如何在html代码中调用变量

<?php
$var = "sometext";
?>
<html>
<body>
<?php echo $var ?>
</body>
</html>

如果我们使用smarty模板,我们可以这样做:

<?php
$var = "sometext";
?>
<html>
<body>
{$var}
</body>
</html>

{$var}

在不使用smarty模板的情况下,这是否可行?谢谢你的帮助

不能在“裸”PHP中使用Smarty语法。。。这就是为什么它是聪明的语法

您有三种选择:

  • 使用PHP的内置语法,即
    (有很好的理由不使用第二种语法,主要是在PHP中很难注释掉。您必须使用HTML注释,这些注释会在HTML源代码中留下PHP的残余。)
  • 编写自己的模板引擎来解析模板文件,您可以使用
    preg\u match
    来搜索类似
    /\{(.*?\}/
    的模式,并用变量替换它们,但请注意,代码替换会导致复杂性。如果你想走这条路,那就调查一下
  • 使用Smarty或其他您喜欢的模板引擎。这些库是存在的,所以要充分利用它们

  • 注意:在PHP5.4或更新版本中,即使禁用了短标记,短echo标记也可以工作。因此,只要您没有运行不受支持的旧版本的PHP,您就不必担心访问它。

    没有编码,但您可以使用
    第一个代码块有什么问题?我知道我们可以使用,但有时我们的服务器不接受PHP短标记。这就是为什么我要创造一些东西。但是我相信如果我们不先打开php标签,那是不可能的!如果没有短标记,为什么不