如果变量具有值,则仅使用函数参数

时间:2017-08-21 17:58:55

标签: php function if-statement parameters

我正在开发一个小型系统来添加以后可以打开的记录。在页面 view.php 上,它显示了所有不同国家/地区的所有记录。我只是将其扩展为只展示一个选定的国家。

我使用以下参数调用此函数: $toxRecords->getStatsCountry();

如果我只想显示一个国家/地区,我只需将县代码添加为参数即可。例: $toxRecords->getStatsCountry('NL');

因为我使用一个页面来显示所有国家/地区以及一个特定国家/地区,因此需要检查是否存在变量。 我使用以下参数检查 POST toxInput::get('country'); 这只是简单的回报:$_POST['country']

现在我只想要它只在值 country 存在时才使用函数参数。这可以非常简单,见下文:

if($country = toxInput::get('country')) {
    $toxList = $toxRecords->getRecords($country);
} else {
    $toxList = $toxRecords->getRecords();
}

但我想知道是否有可能将其缩短到一条单线? 我试过的例子,并解释我想要的东西:

$toxRecords->getRecords(if($country = toxInput::get('country')){ echo $country; });

2 个答案:

答案 0 :(得分:2)

此语句仅通过条件返回一个值:

condition ? value if condition is true : value if condition is false

例如:

$toxRecords->getRecords($country == toxInput::get('country') ? $country : "");

答案 1 :(得分:1)

尝试这样的事情:

($val1 == $val2)? Echo "true" : Echo "False";

有关更多信息,请查看此帖子: https://stackoverflow.com/a/1506621/7116840