如何显示在php中使用数组选择多个下拉菜单? [英] How to display select multiple drop down from using array in php?

查看:89
本文介绍了如何显示在php中使用数组选择多个下拉菜单?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想像父母一样下拉,孩子是指使用引导CSS的多级任务。
我尝试了下面这个,但是我得到了所有课程的名字,我想要像下面这样下载:

Linux
--Linux Basics
p>

CSS
--CSS基础知识



以下是我的代码:

 < ul class =sub-menustyle =border-right:2px solid#012340;> 
<?php foreach($ outContentArrResults AS $ courseName => $ valArrMenu){?>
< li class =menu-item-has-children>
< a href =#><?php echo isset($ valArrMenu [0])? $ valArrMenu [0]: ;? >< / A>

< ul class =sub-menustyle =border-right:2px solid#012340; border-left:2px solid#012340;>
<?php for($ i = 0; $ i< count($ valArrMenu ['slug']); $ i ++){?>
< li>
< a href =<?php echo $ config ['LIVE_URL'];?>课程/<?php isset($ valArrMenu ['slug'] [$ i])?$ valArrMenu [ 'slug'] [$ i]:'';?>><?php echo isset($ valArrMenu [$ i])? $ valArrMenu [$ i]于:?;>< / A>
< / li>
<?php}?>
< / ul>
< / li>
<?php}?>
< / ul>

以下是我的数组值:

<$ p数组

[mainCourse] =>数组

[0] => linux
[slug] = >数组

[0] => linux
[1] => linux-basics
[2] =>第一步
[ 3] =>最后
[4] => sdd
[5] => css
[6] => css-basics
[7] => ; css-introduction
[8] => linux-sub
[9] => test-sub-linux


[1] => linux基础知识
[2] =>第一步
[3] =>最后
[4] => sdd
[5] => css
[6] => css基础知识
[7] => css介绍
[8] => linux sub
[9] => test sub sub linux



$ arrCourses = $ this-> objWsCoursesModel-> getMainMenuCourses();
// print_r($ arrCourses);
$ outResults = array();
for($ i = 0; $ i< count($ arrCourses); $ i ++){
$ courseName = isset($ arrCourses [$ i] ['course_name'])? $ arrCourses [$ i] ['course_name']:'';
$ outResults ['mainCourse'] [] = $ courseName;
$ outResults ['mainCourse'] ['slug'] [] = isset($ arrCourses [$ i] ['course_slug_name'])? $ arrCourses [$ i] ['course_slug_name']:'';


解决方案

数组,这将很难实现;)

试试这个数组:

  $ arrCourses = $ this-> objWsCoursesModel-> getMainMenuCourses(); 
$ outResults = array();
for($ i = 0; $ i< count($ arrCourses); $ i ++){
$ courseName = isset($ arrCourses [$ i] ['course_name'])? $ arrCourses [$ i] ['course_name']:'';
$ outResults ['mainCourse'] [$ courseName] [] = isset($ arrCourses [$ i] ['course_slug_name'])? $ arrCourses [$ i] ['course_slug_name']:'';;
}

试试这段代码。这是一种粗糙的代码。我不确定任何语法错误,但我认为它会像这样工作:

 < ul> 
<?php foreach($ outContentArrResults AS $ courseName => $ valArrMenu){?>
< li class =menu-item-has-children>
< a href =#><?php echo $ courseName?>< / a>


I want drop down like parent,child means multilevel tasking using bootstrap CSS. I tried the below one but I am getting all courses name in child.I want drop down like

Linux --Linux Basics

CSS --CSS Basics

Below is my code:

<ul class="sub-menu" style="border-right: 2px solid #012340;">
    <?php foreach($outContentArrResults AS $courseName=> $valArrMenu){ ?>
        <li class="menu-item-has-children">
          <a href="#"><?php echo isset($valArrMenu[0]) ? $valArrMenu[0]:'';?  ></a>

            <ul class="sub-menu" style="border-right: 2px solid #012340;border-left: 2px solid #012340;">
            <?php for($i=0; $i<count($valArrMenu['slug']); $i++){?>
                <li>
                   <a href="<?php echo $config['LIVE_URL'];?>courses/<?php isset($valArrMenu['slug'][$i]) ? $valArrMenu['slug'][$i]:'';?>"><?php echo isset($valArrMenu[$i]) ? $valArrMenu[$i]:'';?></a>
                </li>
            <?php } ?>
            </ul>
        </li>
    <?php } ?>
    </ul>

Below is my array Value:

         Array
      (
              [mainCourse] => Array
      (
        [0] => linux
        [slug] => Array
             (  
                [0] => linux
                [1] => linux-basics
                [2] => first-steps
                [3] => last
                [4] => sdd
                [5] => css
                [6] => css-basics
                [7] => css-introduction
                [8] => linux-sub
                [9] => test-sub-sub-linux
            )

        [1] => linux Basics
        [2] => first steps
        [3] => last
        [4] => sdd
        [5] => css
        [6] => css Basics
        [7] => css Introduction
        [8] => linux sub
        [9] => test sub sub linux
    )

)
$arrCourses = $this->objWsCoursesModel->getMainMenuCourses();
        //print_r($arrCourses);
        $outResults = array();
        for($i=0; $i<count($arrCourses); $i++){
            $courseName = isset($arrCourses[$i]['course_name']) ? $arrCourses[$i]['course_name'] : '';
            $outResults['mainCourse'][] = $courseName;
            $outResults['mainCourse']['slug'][] = isset($arrCourses[$i]['course_slug_name']) ? $arrCourses[$i]['course_slug_name'] : '';
        }

解决方案

You are making a very complex array which will be hard to implement ;)

Try this array :

$arrCourses = $this->objWsCoursesModel->getMainMenuCourses();
$outResults = array();
for($i=0; $i<count($arrCourses); $i++){
    $courseName = isset($arrCourses[$i]['course_name']) ?    $arrCourses[$i]['course_name'] : '';
    $outResults['mainCourse'][$courseName][] = isset($arrCourses[$i]['course_slug_name']) ? $arrCourses[$i]['course_slug_name'] : '';;
}

And try this code. This is kind of rough code. I am not sure any syntax error but I think it will work like this:

<ul>
<?php foreach($outContentArrResults AS $courseName=> $valArrMenu){ ?>
<li class="menu-item-has-children">
    <a href="#"><?php echo $courseName ?></a>
    <ul class="sub-menu" style="border-right: 2px solid #012340;border-left: 2px solid #012340;">
        <?php for($valArrMenu as $row){?>
        <li>
            <a href="<?php echo $config['LIVE_URL'];?>courses/<?php isset($valArrMenu['slug'][$i]) ? $valArrMenu['slug'][$i]:'';?>"><?php echo isset($valArrMenu[$i]) ? $valArrMenu[$i]:'';?></a>
        </li>
        <?php } ?>
    </ul>
</li>
<?php } ?>
</ul>

这篇关于如何显示在php中使用数组选择多个下拉菜单?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆