我有一个meta数组,我正在为一个看起来像这样的用户保存
$testArray = array("67" => array("400", "402", "1488"), "84" => array("599", 620"), "92" => array("740")
如果不存在用户数组,我需要在给定键和值的情况下构建它
$testArray = ["67" => ["400"]]
如果$ testArray不为空,我需要使用我知道的密钥来查找相应的数组并添加给定的值
$testArray["67"][] = "1500"
所以输出应该是
array("67" => array("400", "1500"))
此方法不会向存在的数组添加任何内容,并且我尝试的每个组合都不添加任何内容或嵌套数组
您是否正在寻找以下内容:
$key = "red";
$valOne = "blue";
$valTwo = "green";
$alpha = get_data_array();
if(count($alpha))
{
$finalArr = [$key => [$valOne,$valTwo]];
}
您可以创建一个虚拟数组来存储$valOne
和$valTwo
,并将此虚拟数组作为键的值。
$dummy = array();
array_push($dummy, $valOne, $valTwo);
if (!empty($alpha)) {
$alpha[$key] = $dummy;
} else {
$alpha = array($key => $dummy);
}
从函数get_data_array()获取关联数组;
$alpha = get_data_array();
假设您要将以下数据添加到$ alpha变量中
$key = "red";
$valOne = "blue";
$valTwo = "green";
方法1:如果你知道只需要添加几个变量
$alpha[$key][] = $valOne;
$alpha[$key][] = $valTwo;
原因,我们知道应该在列表中添加的变量名称,它基于不同的变量名称。如果变量不存在,PHP将创建变量,所以当我们$ alpha [$ key] []时,如果它没有退出,它将为密钥创建一个内存,如果它已经存在,则最后附加到数组。
方法2:如果我们从另一个数组追加
$valuesToAdd = array( $valueOne, $valTwo );
这里,$ valueToAdd可以在数组中包含多个值。它可能来自某些外部源,API或用户输入(如标签)。在这种情况下,您可以执行以下代码
foreach( $valuesToAdd as $element ){
$alpha[$key][] = $element;
}
在这里,我们循环来自$ valueToAdd的每个元素,并且每次都分配给$ element,因此使用键将值附加到$ alpha。