1

我有一个PHP代码如下:

1 个文件包含以下内容:

    <?php
$max=count($_SESSION['cart']);
?>
<div class="cartSummary">
<?php echo $lang['CARTSTATUS']; ?>
</div>

另一个文件包含以下内容:

$lang['CARTSTATUS'] = "Tiene <a href='../cart/shoppingCart.php'>".$max." productos </a>en su cesta de compra";

问题是结果只显示纯文本,$max没有打印变量。

您是否发现将 $max 加载到我正在使用的数组 $lang 中有任何问题?

谢谢!

4

2 回答 2

1

当您设置时,$lang['CARTSTATUS']您已经$max定义了。通过您提取的代码,看起来您首先设置$lang['CARTSTATUS']然后$max

于 2013-02-11T18:36:56.070 回答
0

让你的其他文件有这样的分配:

$lang['CARTSTATUS'] = 'Tiene <a href=\'../cart/shoppingCart.php\'> $max productos </a>en su cesta de compra';

然后在file1中有这样的代码:

<?php
    $max=count($_SESSION['cart']);
    $tmp = $lang['CARTSTATUS'];
    eval("\$tmp = \"$tmp\";");
    $lang['CARTSTATUS'] = $tmp;
?>
<div class="cartSummary">
<?php echo $lang['CARTSTATUS']; ?>
</div>

它将输出您预期的字符串。

我通常不会在其中提供任何带有 eval 的答案,但这似乎是对 PHP 备受批评的eval 函数的安全使用。

于 2013-02-11T19:17:27.877 回答