dongshan8194 2017-01-07 01:33
浏览 58
已采纳

通过数组变量索引php数组[重复]

This question already has an answer here:

I have a little problem. I need index an php array by array variable.

Example:

$structure = [];
$url = "/one/two/three";
$urlParts = explode("/", $url);

// I need convert $urlParts -> to array index ["one"]["two"]["three"]
// Expected result
$structure["one"]["two"]["three"] = true;

Is it possible in php language?

</div>
  • 写回答

1条回答 默认 最新

  • drpiqlzrh62917192 2017-01-07 01:39
    关注

    You can use reference to get it like this:

    <?php
    $urlParts = ['one', 'two', 'three'];
    $o = [];
    $ref = &$o;
    $len = count($urlParts);
    foreach($urlParts as $k => $v)
    {
        $ref[$v] = [];
        $ref = &$ref[$v];
    }
    $ref = true;
    var_dump($o);
    echo var_dump($o['one']['two']['three']);
    

    output:

    ei@localhost:~$ php test.php
    array(1) {
      ["one"]=>
      array(1) {
        ["two"]=>
        array(1) {
          ["three"]=>
          &bool(true)
        }
      }
    }
    bool(true)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?