$animal = ("bird" => "crow", "cat" => "lion", "snake" => "cobra");
我想获得它的键是
function_name_get_value(["monkey","goat","bird"]);
我试着用array_key_exists()
但问题是,因为它被指定我不能通过$animal
变量什么论据是所有值传递函数function_name_get_value
$animal = ("bird" => "crow", "cat" => "lion", "snake" => "cobra");
我想获得它的键是
function_name_get_value(["monkey","goat","bird"]);
我试着用array_key_exists()
但问题是,因为它被指定我不能通过$animal
变量什么论据是所有值传递函数function_name_get_value
很简单,你只需要传递2个参数,一个是键的名称,另一个是数组。
function getValue($arr, $key)
{
return isset($arr[$key]) && is_array($arr) ? $arr[$key] : false;
}
,如果你想获得更多的钥匙只要使用循环
。
function getValue($arr, $keyArr)
{
if(!is_array($arr) || !is_array($keyArr)) return false;
$found = array();
foreach($keyArray as $key)
if(array_key_exists($key, $arr)) $found[$key] = $arr[$key];
return $found;
}
array_key_exists需要两个参数一个是keyname,另一个是数组。我没有看到任何其他选项来找到阵列中的一个键。您必须至少通过2个参数
该问题指定唯一的参数是[“猴”,“山羊”,“鸟”]。 – user2429302
我不想写它,但为您的解决方案是使用** $ _ GLOBALS **关键字; /你确定你不能通过我建议的方式的另一个参数?这个函数的主体是什么,你为什么需要使用它? http://www.php.net/manual/en/reserved.variables.globals.php – Robert
首先,这不是一个多维数组。其次是这一行的语法:'unction_name_get_value([“monkey”,“goat”,“bird”]);'不正确。你可以做'$ animal ['monkey']'来获得值。你试图做什么? – botenvouwer
多维数组是一个数组,如:array('a'=> array('b')),你的$动物数组是一个平坦的数组。正如sirwilliam提到的,你可以以$ animal ['monkey']的形式访问数组元素。如果你需要一个函数来返回给定键的值,那么你需要使用$ _GLOBAL数组,这是一个不好的习惯。 – WASD42
@sirwilliam:该数组的sytax不正确,但方括号自PHP 5.4起罚款。 – Ryan