php - 我如何才能获得 smarty 的常量?

标签 php smarty constants

我遇到了 Smarty 和常量的问题。我在文件中指定了三个常量:

DEFINE('ARTICLE_COLOUR_10', 'Light green');
DEFINE('ARTICLE_COLOUR_11', 'Claret'); // Bordó
DEFINE('ARTICLE_COLOUR_12', 'Yellow');

在 DB 中,我只保存数字(10、11、12),然后通过这个 var 发送这些数字

$sql_query_int = mysqli_query($connectdb, "SELECT colour FROM stock WHERE product='$articleId'");    
$smarty->assign('colours', $sql_query_int);

在 TPL 我得到那些数字

{foreach from=$colours key=field item=value}
    {$value.colour}<br>
{/foreach}

现在我想获取变量 ARTICLE_COLOUR_$value.colour;我尝试了三种不同的方法,但无法获得完整的变量。

{$smarty.const.ARTICLE_COLOUR_{$value.colour}}
{$smarty.const.ARTICLE_COLOUR_$value.colour}
{$smarty.const.ARTICLE_COLOUR_value.colour}

Fatal error: Smarty error: [in C:\xampp\htdocs/templates/default/tpl\article.tpl line 10]: syntax error: $smarty.$value.colour is an invalid reference (Smarty_Compiler.class.php, line 2169) in C:\xampp\htdocs\inc\smarty\Smarty.class.php on line 1109

如果这个问题拼写错误,我将不胜感激,我的英语不是很先进。

最佳答案

{constant("ARTICLE_COLOUR_{$value.colour}")}

关于php - 我如何才能获得 smarty 的常量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40444331/

相关文章:

Visual Studio 中的 C 程序。具有常量值的数组被视为错误

javascript - Const 不是在全局范围内定义的,而是在局部范围内定义的?

php - 根据主键(Mysql)从两个表中选择一行?

php - 运行 sql 查询以插入到表中并更新另一个表

php - prestashop - 添加新用户或客户的代码

php - 500内部服务器错误?

javascript - 将两个按钮合并为一个切换按钮

javascript - 我可以在 PHP 循环中创建 JavaScript 函数吗

php - Smarty - 如何将表单中的值添加到 mysql 查询?

c++ - 默认值为Global const vs.函数返回值