起初我发布了我的代码:
//if ($filterResults['id']) {
if (isset($filterResults['id'])){
$select = $this->select();
$select->where('id = ?', $filterResults['id']);
$this->fetchAll($select);
}
现在,问题是如果我使用if ($filterResults['id']) {
它会给出预期的结果但是如果我使用if (isset($filterResults['id'])){
它就不起作用。我认为这背后没有任何理由。
答案 0 :(得分:4)
isset()
将返回false。如果有可能,您可能希望改为使用array_key_exists()
:
if (array_key_exists('id', $filterResults)) {
[...]
}
答案 1 :(得分:0)
如果我像这样使用isset():
if ( isset($filterResults['id']) && $filterResults['id'] != null ){
$select = $this->select();
$select->where('id = ?', $filterResults['id']);
$this->fetchAll($select);
}