在PHP中,如何将数组作为键的值存储在另一个数组中?
我试图将一个数组作为键的值存储在另一个数组中。 我不能使用像array_push()或for循环这样的函数,因为第二个数组是作为函数的参数创建的 我在谷歌上搜索了几个小时,找不到任何答案!我是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'); 缺少”和是一个打字错误。阵列的创建方式要复杂得多。在我试
$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”行,则不会出现错误。该行可能不是错误的直接原因,但我们这里的问题是,错误无法从您问题中的代码复制。在你展示的代码中有语法错误,只是没有语法错误会导致你得到的特定解析错误。无法调试“示例”,嘿,博士,这里有一个断臂的示例,不是我的,但你能帮我修复这个示例吗。代码只是一个示例