在 CodeIgniter 中添加和减去多个 if-else 语句

Adding and subtracting multiple if-else statements in CodeIgniter

我在 codeigniter 中有一个与此类似的代码,效果很好。

<?php if (a>b) echo (a-b); else echo '0'; ?>

问题是,我想添加复合函数。我试过下面的代码,但它不起作用。我收到错误代码:“解析错误:语法错误,意外 'if' (T_IF)”

<?php echo (if (a>b) echo (a-b); else echo '0') + (if (c>d) echo (c-d); else echo '0') + (if (e>f) echo (e-f); else echo '0'); ?>

问题是您不能将 if-else 块作为参数添加或传递给 echo 语句,因为 if-else 代码块不是 表达式.

要在一行中连接并打印您的值,请使用 ?: 三元 运算符 as

<?php echo ($a > $b ? $a - $b : '0') . ($c > $d ? $c - $d : '0') . ($e > $f ? $e - $f : '0');  ?>

由于您的表达式使用的是字符串文字 '0',我假设您想要将值连接为字符串。我们为此使用 . 运算符,而不是 PHP.

中的 +

是的,语法有问题。您必须使用三元运算符才能这样做。 这是 PHP 三元运算符的语法。

(Condition) ? (Statement1) : (Statement2);
<?php echo ((a > b)?(a - b):0) + ((c > d)?(c - d):0) + ((e > f)?(e - f):0); ?>