打印2个函数,空格介于?

时间:2016-09-15 13:38:46

标签: php

我尝试echo两个函数的返回值,中间有空格,我试过了:

class="<?php echo strtolower($class).' '.is_array($arr) ? 'yes' : 'no'; ?>"

但以上并没有输出任何东西。我哪里错了?

5 个答案:

答案 0 :(得分:4)

你的代码说&#34;是strtolower(…)' '和布尔真理的串联?&#34; 因为那总是如此,它应该始终输出yes。通过不使用连接但将单独的参数传递给echo

,可以最好地避免这种情况
echo strtolower($class), ' ', is_array($arr) ? 'yes' : 'no';

现在最后一个三元表达式与前两个表达式无关。

答案 1 :(得分:3)

只需将三元组合起来。

echo strtolower($class).' '.(is_array($arr) ? 'yes' : 'no');

答案 2 :(得分:2)

<?php echo strtolower('someText').' '.(is_array([]) ? 'yes' : 'no'); ?>

结果: sometext yes

答案 3 :(得分:1)

使用此:

class="<?php echo strtolower($class); ?> <?php is_array($arr) ? echo 'yes' : echo 'no'; ?>"

您打印出函数的结果(为TRUE或FALSE)。通过这种方式,您可以输出字符串是或否。

答案 4 :(得分:1)

我认为你必须把

class="<?php echo strtolower($class).' '.(is_array($arr) ? 'yes' : 'no'); ?>"

注意&#34;()&#34;围绕is_array