Home  >  Article  >  Backend Development  >  How is this effect of generating drop-down options achieved?

How is this effect of generating drop-down options achieved?

WBOY
WBOYOriginal
2016-08-04 09:21:03849browse

How is this effect of generating drop-down options achieved?

Reply content:

How is this effect of generating drop-down options achieved?

How is this effect of generating drop-down options achieved?
It should be spliced ​​by yourself, probably in the following way

<code>  $arr = [
            0=> ['id'=>'1', 'title'=>'总栏目', 'children'=>[
                0=>['id'=>'4', 'title'=>'访谈', 'children'=>[]],
                1=>['id'=>'5', 'title'=>'公告', 'children'=>[]]]
            ],
            1 => ['id'=>'3', 'title'=>'总专题', 'children'=>[
                0=>['id'=>'6', 'title'=>'得利卡就了', 'children'=>[]],
                1=>['id'=>'10', 'title'=>'鸡豆凉粉', 'children'=>[
                    0=>['id'=>'7', 'title'=>'爱上生活', 'children'=>[]],
                    1=>['id'=>'8', 'title'=>'降低生产力骄傲', 'children'=>[
                        0=>['id'=>'9', 'title'=>'大了', 'children'=>[]]
                    ]]
                ]
                ],
            ]
            ]];
    $returnInfo = getSelectArray($arr);
    var_dump($returnInfo);
public function getSelectArray($arr, $grade = 0) {
        $char = ['', '├','| ├', '|   ├'];
        $encChar = ['','┕','| ┕', '|   ┕'];
        $returnInfo = [];
        foreach($arr as $key => $val){
            $sort = $key + 1;
            $tmp['id'] = $val['id'];
            if($val == end($arr)) {
                $tmp['title'] = $encChar[$grade] . $val['title'];
            } else {
                $tmp['title'] = $char[$grade] . $val['title'];
            }
            $children = getSelectArray($val['children'], $grade+1);
            $returnInfo[] = $tmp;
            $returnInfo = array_merge($returnInfo, $children);
        }
        return $returnInfo;
    }
</code>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn