如何将一个关联数组元素指向一个普通数组(并添加到它)

时间:2017-12-30 03:13:57

标签: php arrays associative-array

我想创建一个关联数组,其中第一个元素指向(正常)元素。该数组看起来像是:

[吉姆] => (23,18,20)

[Mary] => (57,19,26,67,103)

这个例子有两个元素,每个元素的第一个元素都是以' name' (associativley)。

这两个条目中的每个条目的第二个元素是一个数组。这些本质上是访问其他数据结构的方法,这些元素可以包含可变数量的元素。

我真的很难让语法正确。

我是否将整个数组声明为(例如,在类中)

protected $names = [];

...然后当我添加新名称时,我是否将数组添加到:

array_push($this->authors[$givenName], array());

[这似乎有用]

...但是如何将元素添加到[$ givenName]现在指向的数组?

我已经苦苦挣扎了几天而无法找到合适的语法。

任何帮助表示感谢。

1 个答案:

答案 0 :(得分:0)

我不确定你的语法是否正确。相反,请尝试以下方法:

//checking if we've initialized the data for $givenName; if not, we initialize the array before inserting
if(!isset($this->authors[$givenName])) {
    $this->authors[$givenName] = array();
}

//insert a value into $givenName's array
array_push($this->authors[$givenName], $some_val);

//result is $this->authors = array($givenName => array($some_val))