" array_key_exists()"不正常

时间:2014-04-17 07:29:41

标签: php arrays array-key-exists

代码

$descriptionArr = array( "uk/page"=>"", "uk/page-two"=>"description of page 2");

function getDescription($uri){
    if (array_key_exists($uri, $descriptionArr)) {
      return $descriptionArr[$uri];
    } else {
      return false;
    }
}

情况

  • 当我用参数" uk / page-two"来调用函数时它返回描述
  • 当我用参数" uk / page"来调用函数时它返回false而不是空字符串

问题

我希望它返回空字符串,并且只有当传递的参数不作为数组中的键存在时才返回false。

2 个答案:

答案 0 :(得分:2)

这应该有效:

$descriptionArr = array( "uk/page"=>"", "uk/page-two"=>"description of page 2");

function getDescription($uri, $descriptionArr){
    if (false !== array_key_exists($uri, $descriptionArr)) {
      return $descriptionArr[$uri];
    } else {
      return false;
    }
}

答案 1 :(得分:0)

您可以将功能更改为以下内容:

function getDescription($uri) {
    if (isset($descriptionArr[$uri])) {
      return $descriptionArr[$uri];
    } else {
      return false;
    }
}