json으로 메뉴만들기 채택완료
bonobono
7년 전
조회 4,726
json으로 nav를 만들어 보려고 했는데 쉽지가않아 질문합니다..
file.json
</p>
<p>{
"menu":{
"LG소개":[
{"비전":"/a1.html"},
{"계열사":"/a2.html"},
{"연혁":"/a3.html"}
],
"INNOVATION":[
{"INNOVATION":"/b1.html"}
],
"홍보센터":[
{"영상뉴스":"/c1.html"},
{"인쇄광고":"/c2.html"},
{"홍보영상":"/c3.html"},
{"TV광고":"/c4.html"}
]
}
}</p>
<p>
위 json 으로 아래 html 구조를 만드려고 합니다.
</p>
<p><body>
<?php
$jsonFile = file_get_contents('file.json');
$json = json_decode($jsonFile,true);
?>
<ul>
<li>
<a href="/a1.html" class="subject">LG소개</a>
<ul class="sub_mn">
<li><a href="/a1.html">비전</a></li>
<li><a href="/a2.html">계열사</a></li>
<li><a href="/a3.html">연혁</a></li>
</ul>
</li>
<li>
<a href="/b1.html" class="subject">INNOVATION</a>
<ul class="sub_mn">
<li><a href="/b1.html">INNOVATION</a></li>
</ul>
</li>
<li>
<a href="/c1.html" class="subject">홍보센터</a>
<ul class="sub_mn">
<li><a href="/c1.html">영상뉴스</a></li>
<li><a href="/c2.html">인쇄광고</a></li>
<li><a href="/c3.html">홍보영상</a></li>
<li><a href="/c4.html">TV광고</a></li>
</ul>
</li>
<?php</p>
<p> //ex
foreach($json['menu'] as $key => $value ){
echo '<li>...</li>';
}
?>
</ul>
</body></p>
<p>
.subject 의 href값은 [ .sub_mn li:first-child a ]의 href 값입니다. << 여기서 잘 안되네요,,
foreach문안에 foreach문안에 foreach문(?) 넣다가 뭔가 아니다 싶어 질문합니다
도움부탁드립니다.
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
7년 전
</p>
<p>echo "<ul>";
foreach($json['menu'] as $key => $value) {
echo "<li><a href='".array_values($value[0])[0]."' class='subject'>".$key."</a><ul class='sub_mn'>";
foreach($value as $k => $v) {
echo "<li><a href='".array_values($v)[0]."'>".array_keys($v)[0]."</a></li>";
}
echo "</ul></li>";
}
echo "</ul>";</p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
b
bonobono
7년 전
와 대단하시네요 반 포기하고 그누보드 메뉴배열로 짜고있었는데,,
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인