为了账号安全,请及时绑定邮箱和手机立即绑定

如何将可变数组结构传递给数组

如何将可变数组结构传递给数组

PHP
慕仙森 2021-11-26 17:48:40
我有以下动态创建的变量:$var = "'a'=>'123', 'b'=>'456'";我用它来填充一个数组:$array=array($var);我不能这样做,$array=array('a'=>'123', 'b'=>'456')因为 $var 总是不同的。所以它告诉我:Array(    [0] => 'a'=>'123', 'b'=>'456')这是错误的,因为我需要得到:Array(    [a] => 123    [b] => 456)我的代码有什么问题?提前致谢。
查看完整描述

1 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

理想情况下,您应该只利用 PHP 的语法来填充关联数组,如下所示:


$array = [];

$array['a'] = '123';

$array['b'] = '456';

但是,您实际上可以编写一个脚本来解析您的输入以生成关联数组:


$var = "'a'=>'123', 'b'=>'456'";

preg_match_all ("/'([^']+)'=>'([^']+)'/", $var, $matches);

$array = [];

for ($i=0; $i < count($matches[0]); $i++) {

    $array[$matches[1][$i]] = $matches[2][$i];

}

print_r($array);

这打印:


Array

(

    [a] => 123

    [b] => 456

)


查看完整回答
反对 回复 2021-11-26
  • 1 回答
  • 0 关注
  • 146 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信