5

私は分割を行う必要があります:

{math equation="x/y" x=$x y=$y} // $x = '2', $y = '3'

CMS のプロプライエタリ コードにアクセスできないため、Smarty で文字列を数値に正確に変換する方法を教えてください。ありがとう!

UPD: Smarty バージョン: 2.6.18

4

3 に答える 3

10

$var などの変数に既に割り当てられている場合は、次のように変数の型を設定できます。

{$converted = settype ($var, 'integer')}

$converted 値を使用する必要はありませんが、割り当てないと、bool がページに表示されます。

またはあなたが試すことができます

{$variable|intval}
于 2014-05-16T12:34:22.230 に答える
4

これを試すことができます{$variable|intval}

そしてまた((int)$variable)

例えば:

$x_new = (int) $x;
$y_new = (int) $y;

あなたの場合:

{math equation="x/y" x=(int)$x y=(int)$y}
于 2014-05-16T12:34:37.687 に答える
2

以下で変更なしで動作します。

PHP:

$x = '2' ;
$y = '3' ;

$smarty->assign('x',$x);
$smarty->assign('y',$y);

$smarty->display('index.tpl');

スマート:

{math equation="x/y" x=$x y=$y}

表示される結果は次のとおりです。0.66666666666667

利用可能な最後の Smarty バージョン 2.6.28 でテストされました。

古いバージョンには多くのバグがあったため、最新の Smarty へのアップグレードを検討する必要があります (もちろん、問題が発生した場合に備えてすべてをバックアップする必要があります)。

また、あなたの質問には、Smarty を示す結果と、Smarty/

于 2014-05-16T15:07:16.560 に答える