我正在做这个...
<?php $term = ucfirst($_GET['term']);?>
并在页面上多次执行此操作:
<?php if (empty($term)) echo 'X'; else echo $term; ?>
有没有更好的方法来解决这个问题?
我正在做这个...
<?php $term = ucfirst($_GET['term']);?>
并在页面上多次执行此操作:
<?php if (empty($term)) echo 'X'; else echo $term; ?>
有没有更好的方法来解决这个问题?
您可以在首次分配值时指定占位符值:
<?php $term = ucfirst($_GET['term']) or $term = "X"; ?>
(有效,因为 OR 的优先级低于分配。)
然后只需打印该变量:
<?= $term ?>
它将包含输入值或您的X
.
三元运算符:
$term = (empty(ucfirst($_GET['term']))) ? echo 'X' : $_GET['term'];
声明一个函数
function doTerm()
{
$term = ucfirst($_GET['term']);
if (empty($term)) echo 'X'; else echo $term;
}
所以你可以这样称呼它
doTerm();
每当您需要它来测试和回显时。
<?php
$term = isset($_GET['term']) ? ucfirst($_GET['term']) : 'X';
echo $term;
//...
?>
如果您在其他任何地方都不需要它,则可以使它更短:-)
echo (isset($_GET['term']) ? ucfirst($_GET['term']) : 'X');
三元语法在这里可以很容易地工作:
使用简写标签:
<?=empty($term) ? 'X' : $term ?>
或长手:
<?php echo empty($term) ? 'X' : $term ?>
你可以使用像 echo ($term!=null) 这样的条件运算符吗?'x' : $术语;