Php 如何通过字符串键获取数组?

Php 如何通过字符串键获取数组?,php,Php,例如,我需要通过字符串键获取值$string: var_dump($arr['privateContacts']); // Works $string = 'privateContacts'; $arr[$string]; // Does not work returns NULL 功能: function existSecureField($arr, $string, $key){ var_dump($arr[$string]); die();... existSecureField($

例如,我需要通过字符串键获取值
$string

var_dump($arr['privateContacts']); // Works

$string = 'privateContacts';
$arr[$string]; // Does not work returns NULL
功能:

function existSecureField($arr, $string, $key){ var_dump($arr[$string]); die();...
existSecureField($secureFields, 'privateContacts', 1)
var_dump($arr);

array(2) { ["privatePersonal"]=> array(4) { [0]=> int(1) [1]=> int(1) [2]=> int(1) [3]=> int(1) } ["privateContacts"]=> array(2) { [1]=> int(1) [2]=> int(1) } }
调用函数:

function existSecureField($arr, $string, $key){ var_dump($arr[$string]); die();...
existSecureField($secureFields, 'privateContacts', 1)
var_dump($arr);

array(2) { ["privatePersonal"]=> array(4) { [0]=> int(1) [1]=> int(1) [2]=> int(1) [3]=> int(1) } ["privateContacts"]=> array(2) { [1]=> int(1) [2]=> int(1) } }
函数existSecureField()中的变量转储:

function existSecureField($arr, $string, $key){ var_dump($arr[$string]); die();...
existSecureField($secureFields, 'privateContacts', 1)
var_dump($arr);

array(2) { ["privatePersonal"]=> array(4) { [0]=> int(1) [1]=> int(1) [2]=> int(1) [3]=> int(1) } ["privateContacts"]=> array(2) { [1]=> int(1) [2]=> int(1) } }

不,它必须起作用。我试过这个:

         $array = array("key" => "value");
           $k = "key";
               echo $array[$k];

很好用$arr[$string]不是一个语句,它必须给出一个错误。

对我来说可以吗?这怎么能返回空值呢?!您是否忘记了
var\u dump
部分?
$arr[$string]
是正确的。你在做一些你没有表现出来的错误。@Danil如果你有一个错误,那么它就不在这些错误中lines@Danil什么是
$key
,第一个框中的代码在哪里?比如在功能上或者在哪里?您对
$arr[$string]有什么期望作为输出?