如何在循环里插入5b7a15bed8615d1b843806256bebea72?
$data = array ( 0 => array ( 'id' => '1', 'name' => 'WEB编程', 'parentid' => '0', ), 1 => array ( 'id' => '2', 'name' => 'PHP', 'parentid' => '1', ), 2 => array ( 'id' => '3', 'name' => 'Ajax', 'parentid' => '1', ), 3 => array ( 'id' => '4', 'name' => 'java', 'parentid' => '1', ), 4 => array ( 'id' => '5', 'name' => 'WinForm编程', 'parentid' => '0', ), 5 => array ( 'id' => '6', 'name' => 'VB', 'parentid' => '5', ), 6 => array ( 'id' => '7', 'name' => 'VC', 'parentid' => '5', ), );
这么一个数组,想得到下面的效果。
<select name="categorys"> <optgroup label="WEB编程"> <option value="2" >PHP</option> <option value="3" >Ajax</option> <option value="4" >java</option> </optgroup> <optgroup label="WinForm编程"> <option value="6" >VB</option> <option value="7" >VC</option> </optgroup> </select>
难点在于如何在foreach里判断把5a07473c87748fb1bf73f23d45547ab8包含在5b7a15bed8615d1b843806256bebea72里,折腾了半天也没出办法。请高手指点如何完成。
$data = array ( 0 => array ( 'id' => '1', 'name' => 'WEB编程', 'parentid' => '0', ), 1 => array ( 'id' => '2', 'name' => 'PHP', 'parentid' => '1', ), 2 => array ( 'id' => '3', 'name' => 'Ajax', 'parentid' => '1', ), 3 => array ( 'id' => '4', 'name' => 'java', 'parentid' => '1', ), 4 => array ( 'id' => '5', 'name' => 'WinForm编程', 'parentid' => '0', ), 5 => array ( 'id' => '6', 'name' => 'VB', 'parentid' => '5', ), 6 => array ( 'id' => '7', 'name' => 'VC', 'parentid' => '5', ), ); echo '<select name="categorys">'; foreach($data as $v) { if($v['parentid'] == 0) echo "<optgroup label='$v[name]'>"; else echo "<option value='$v[id]' >$v[name]</option>"; } echo '</select>';
唠叨大哥,你上面的操作还是缺了结束符啊bc2752b74169f27a1fb12a4976198c73
我就是在苦闷如何把这个bc2752b74169f27a1fb12a4976198c73加进去。
echo "<optgroup label='$v[name]'>$v[name]</optgroup>";
稍微改下就行了。
$data = array ( 0 => array ( 'id' => '1', 'name' => 'WEB编程', 'parentid' => '0', ), 1 => array ( 'id' => '2', 'name' => 'PHP', 'parentid' => '1', ), 2 => array ( 'id' => '3', 'name' => 'Ajax', 'parentid' => '1', ), 3 => array ( 'id' => '4', 'name' => 'java', 'parentid' => '1', ), 4 => array ( 'id' => '5', 'name' => 'WinForm编程', 'parentid' => '0', ), 5 => array ( 'id' => '6', 'name' => 'VB', 'parentid' => '5', ), 6 => array ( 'id' => '7', 'name' => 'VC', 'parentid' => '5', ), ); $tempArray = array(); foreach($data as $item){ $tempArray[$item['parentid']][$item['id']] = $item['name']; } echo '';
只是foreach了三次怕效率较差,不知还没有有别的方法。
重做数组的话……
$data = array ( array ( 'id' => '1', 'name' => 'WEB编程', 'parentid' => '0', 'sub'=> array( array( 'id' => '2', 'name' => 'PHP', 'parentid' => '1', ), array ( 'id' => '3', 'name' => 'Ajax', 'parentid' => '1', ), array ( 'id' => '4', 'name' => 'java', 'parentid' => '1', ) ) ), array ( 'id' => '5', 'name' => 'WinForm编程', 'parentid' => '0', 'sub'=> array( array ( 'id' => '6', 'name' => 'VB', 'parentid' => '5', ), array ( 'id' => '7', 'name' => 'VC', 'parentid' => '5', ) ) ) ); echo '<select style="width:200px;">'; for($i=0,$il=count($data);$i<$il;$i++){ echo '<optgroup label="'.$data[$i]['name'].'">'; for($j=0,$jl=count($data[$i]['sub']);$j<$jl;$j++){ echo '<option>'.$data[$i]['sub'][$j]['name'].'</option>'; } echo '<optgroup>'; } echo '</select>';
是吗?
哦,是少了个 bc2752b74169f27a1fb12a4976198c73
不过我测试代码时并没有感觉出有与没有的差异
一定要有的话,就加个开关变量。要多次循环干什么?
echo '<select name="categorys">'; $k = false; foreach($data as $v) { if($v['parentid'] == 0) { echo "<optgroup label='$v[name]'>"; $k = true; }else { if($k) echo '</optgroup>'; echo "<option value='$v[id]' >$v[name]</option>"; $k = false; } } echo '</select>';
以上是在循环里如何使用<optgroup>标签的详细内容。更多信息请关注PHP中文网其他相关文章!

htmlisaspecifictypefodyfocusedonstructuringwebcontent,而“代码” badlyLyCludEslanguagesLikeLikejavascriptandPytyPythonForFunctionality.1)htmldefineswebpagertuctureduseTags.2)“代码”代码“ code” code code code codeSpassSesseseseseseseseAwiderRangeLangeLangeforLageforLogageforLogicIctInterract

HTML、CSS和JavaScript是Web开发的三大支柱。1.HTML定义网页结构,使用标签如、等。2.CSS控制网页样式,使用选择器和属性如color、font-size等。3.JavaScript实现动态效果和交互,通过事件监听和DOM操作。

HTML定义网页结构,CSS负责样式和布局,JavaScript赋予动态交互。三者在网页开发中各司其职,共同构建丰富多彩的网站。

HTML适合初学者学习,因为它简单易学且能快速看到成果。1)HTML的学习曲线平缓,易于上手。2)只需掌握基本标签即可开始创建网页。3)灵活性高,可与CSS和JavaScript结合使用。4)丰富的学习资源和现代工具支持学习过程。

AnexampleOfAstartingTaginHtmlis,beginSaparagraph.startingTagSareEssentialInhtmlastheyInitiateEllements,defiteTheeTheErtypes,andarecrucialforsstructuringwebpages wepages webpages andConstructingthedom。

如何设计菜单中的虚线分割效果?在设计菜单时,菜名和价格的左右对齐通常不难实现,但中间的虚线或点如何...

网页代码编辑器中的HTML元素分析许多在线代码编辑器允许用户输入HTML、CSS和JavaScript代码。最近,有人提出了一...

关于使用react-app-rewired构建静态页面时如何避免代码压缩许多开发者在使用React构建静态页面时,希望在交付给�...


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

WebStorm Mac版
好用的JavaScript开发工具

禅工作室 13.0.1
功能强大的PHP集成开发环境

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中