带有变量的PHP语法

时间:2011-04-03 16:14:55

标签: php variables syntax shopp

我正在使用wordpress shopp插件在我的网站上销售产品。在我的模板文件中,我使用shopp短代码来显示特定类别。它看起来像这样:

<?php shopp('catalog','category','load=true&id=16'); ?>

我希望数字16可以更改,因此我将正确的动态数字存储在变量中,如下所示:

<?php $shopid = get_field('store_id'); ?>

变量$shopid是应该替换上面的“16”的正确数字。问题是,如何在shopp短代码中放置变量?我没有运气,尝试如下:

<?php shopp('catalog','category','load=true&id=$shopid'); ?>

任何想法如何解决这个问题?

2 个答案:

答案 0 :(得分:5)

single-quoted strings个变量中,变量不会被其值替换:

  

注意:与双引号和heredoc语法不同,特殊字符的变量和转义序列在单引号字符串中不会扩展。

改为使用double quotesstring concatenation

shopp('catalog','category',"load=true&id=$shopid")
shopp('catalog','category','load=true&id='.$shopid)

答案 1 :(得分:1)

无论

<?php shopp('catalog','category',"load=true&id=$shopid"); ?>

注意double quotes。或者:

<?php shopp('catalog','category','load=true&id=' . $shopid); ?>

这是concatenation