Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中,如何将数组作为键的值存储在另一个数组中?_Php_Arrays_Key Value Store - Fatal编程技术网

在PHP中,如何将数组作为键的值存储在另一个数组中?

在PHP中,如何将数组作为键的值存储在另一个数组中?,php,arrays,key-value-store,Php,Arrays,Key Value Store,我试图将一个数组作为键的值存储在另一个数组中。 我不能使用像array_push()或for循环这样的函数,因为第二个数组是作为函数的参数创建的 我在谷歌上搜索了几个小时,找不到任何答案!我是PHP新手,所以我不知道这是否可行 第一个数组类似于: $choices[]=array('1'=>'Blue','2'=>'Red) 编辑:这是我想要添加的代码 $choices[]=array('1'=>'Blue','2'=>'Red'); 缺少”和是一个打字错误。阵列的创建方式要复杂得多。在我试

我试图将一个数组作为键的值存储在另一个数组中。 我不能使用像array_push()或for循环这样的函数,因为第二个数组是作为函数的参数创建的

我在谷歌上搜索了几个小时,找不到任何答案!我是PHP新手,所以我不知道这是否可行

第一个数组类似于:

$choices[]=array('1'=>'Blue','2'=>'Red)
编辑:这是我想要添加的代码

$choices[]=array('1'=>'Blue','2'=>'Red');
缺少
是一个打字错误。阵列的创建方式要复杂得多。在我试图将其抽象和简化到这里的过程中,我错过了
。感谢@diéfani favareto piovezan发现了这一点

现在,我想将此数组作为键的值插入另一个数组中,该数组是在代码的另一部分中创建的:

返回随机函数('random text',数组(
“a'=>“苹果”,
‘b’=>‘香蕉’,
“c”=>,
)
)
我希望数组
$choices
是键
'c'
的值

我试过这个

返回随机函数('random text',数组(
“a'=>“苹果”,
‘b’=>‘香蕉’,
“c”=>$choices,
),
)
但这给了我一个错误

编辑:我想说我试过这个

返回随机函数('random text',数组(
“a'=>“苹果”,
‘b’=>‘香蕉’,
“c”=>$choices,
)
)
再一次,在尝试抽象和简化(在RandomFunction中创建的实际数组大约有250行)时,我错误地添加了额外的逗号。感谢@brevis、@Nick和@tim发现了这一点并引起了我的注意

Parse error:syntax error,在/filename.php第120行中意外出现“=>”(T_双箭头),应为“')
这个错误提到了代码下面的另一行,但我知道这不是原因,因为如果我删除

“c”=>$choices,
没有错误

编辑:我的意思是“在我添加
'c'
行之前”(而不是“如果我删除它”),没有错误。我还可以补充说,
$choices
的创建在
随机函数
数组之前,这也是我知道没有错误的另一个原因

结论: 正如我所提到的,这个错误是在
'c'
行之后的一个额外的
),
,我在这里试图简化代码时没有重现这个错误。我想当我在实际代码中添加
'c'
行时,我一定是错误地添加了一个额外的
),
。我之所以能找到它,是因为@nick说
random函数
code(“我试过这个”)应该能工作。这就是我需要确认错误不在那条线上的答案。感谢@Don panic的评论,我更加仔细地查看了收到的错误消息,发现了额外的
)“
。最后,每个人都帮助了我。谢谢大家

对于任何遇到此问题的人,工作代码是:

$choices[]=array('1'=>'Blue','2'=>'Red');
返回随机函数('random text',数组(
“a'=>“苹果”,
‘b’=>‘香蕉’,
“c”=>$choices,
)
);

*

您的代码在红色后面缺少一个引号和分号

试试这个,看看它是否有效:

$choices[] = array('1'=>'Blue','2'=>'Red');

您的代码在红色后缺少单引号和分号

试试这个,看看它是否有效:

$choices[] = array('1'=>'Blue','2'=>'Red');
好的,我发现了错误:

我在第二个数组的末尾添加了一个额外的
),

工作代码是

$choices[] = array('1'=>'Blue','2'=>'Red');

 return randomFunction('random text', array(
                               'a' => 'apple',
                               'b' => 'banana',
                               'c' => $choices,
                              )

                      );
好的,我发现了错误:

我在第二个数组的末尾添加了一个额外的
),

工作代码是

$choices[] = array('1'=>'Blue','2'=>'Red');

 return randomFunction('random text', array(
                               'a' => 'apple',
                               'b' => 'banana',
                               'c' => $choices,
                              )

                      );

在本例中,在数组的括号结束后,coma出现99%的错误(您编写的代码(数组后面的假逗号除外)很好。如果需要帮助,您需要向我们显示所有代码,包括带有实际错误消息的行。为什么该行相关?我已经说过,如果删除“c”行,则不会出现错误。该行可能不是错误的直接原因,但我们这里的问题是,错误无法从您问题中的代码复制。您所展示的代码中有语法错误,只是没有语法错误会导致您遇到的特定解析错误。无法调试“示例”,嘿,博士,这里有一个断臂的示例,不是我的,但您能帮我修复该示例吗。在这种情况下,关闭数组括号(您编写的代码)后,coma上99%的错误(数组后面的假逗号除外)很好。如果需要帮助,您需要向我们显示所有代码,包括带有实际错误消息的行。为什么该行相关?我已经说过,如果删除“c”行,则不会出现错误。该行可能不是错误的直接原因,但我们这里的问题是,错误无法从您问题中的代码复制。在你展示的代码中有语法错误,只是没有语法错误会导致你得到的特定解析错误。无法调试“示例”,嘿,博士,这里有一个断臂的示例,不是我的,但你能帮我修复这个示例吗。代码只是一个示例