ホームページ  >  記事  >  バックエンド開発  >  php如何将一维数组赋值到一个变量根据这个一维数组层层嵌套?

php如何将一维数组赋值到一个变量根据这个一维数组层层嵌套?

WBOY
WBOYオリジナル
2016-06-06 20:21:401575ブラウズ

例子:
一维数组:

<code>$arr = ['a', 'b', 'c', 'd'];
</code>

需要转变成的变量:

<code>$tmp['a']['b']['c']['d'] = $value;</code>

一维数组层级不定,key不定。

回复内容:

例子:
一维数组:

<code>$arr = ['a', 'b', 'c', 'd'];
</code>

需要转变成的变量:

<code>$tmp['a']['b']['c']['d'] = $value;</code>

一维数组层级不定,key不定。

<code class="php">$arr = ['a', 'b', 'c', 'd'];

$x = [];
$y = &$x;
$value = 1234;

while ($key = current($arr)) {
    $y[$key] = [];
    $y = &$y[$key];
    next($arr);
}
$y = $value;

print_r($x);</code>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。