我有一个动态表单来创建创建数组的章节和子章节:
var_dump($_POST);
array{["textfield"] => array {
[0] => "title one"
[1] => "title two"
[2] => "title three"
[4] => "title four"
}
["textarea"] => array {
[0] => "title text"
[1] => "title summary"
[2] => "title description"
[4] => "title details"
}
["hidden"] => array {
[0] => "1"
[1] => "2"
[2] => "3"
[4] => "1"
}
}
我对数组很弱。我读过几篇关于多维数组和排序的文章,但没有运气,也没有看到任何与我的例子足够相似的例子,让我明白我需要如何调整它。
我想为每一个:
<div class="row<? echo $hidden ?>">
<h2><? echo $textfield ?></h2>
<h3><? echo $textarea ?></h3>
</div>
通过多个数组匹配键 0(或相应的键号)和值。如同:
<div class="row<? echo $_POST['hidden'][0] ?>">
<h2><? echo $_POST['textfield'][0] ?></h2>
<h3><? echo $_POST['textarea'][0] ?></h3>
</div>
<div class="row<? echo $_POST['hidden'][1] ?>">
<h2><? echo $_POST['textfield'][1] ?></h2>
<h3><? echo $_POST['textarea'][1] ?></h3>
</div>
<div class="row<? echo $_POST['hidden'][2] ?>">
<h2><? echo $_POST['textfield'][2] ?></h2>
<h3><? echo $_POST['textarea'][2] ?></h3>
</div>
<div class="row<? echo $_POST['hidden'][3] ?>">
<h2><? echo $_POST['textfield'][3] ?></h2>
<h3><? echo $_POST['textarea'][3] ?></h3>
</div>
这种形式可以动态创建数百层深度,我只能打印整个数组或每个 $key 的所有 $values。我还没有通过各种数组进行任何成功匹配。
我希望你能跟随。如果您有任何建议,我将非常感激。
在模板中:
<? for ($i = 0; $i < count($_POST['textfield']); $i++): ?>
<div class="row<? echo $_POST['hidden'][$i] ?>">
<h2><? echo $_POST['textfield'][$i] ?></h2>
<h3><? echo $_POST['textarea'][$i] ?></h3>
</div>
<? endfor; ?>
虽然这会很好用(假设每个嵌套数组的长度相同),但我认为构建数组的更合适的方法是这样的:
array{
[0] => array{
["hidden"] => "1"
["textarea"] => "title text"
["textfield"] => "title one"
}
[1] => array{
["hidden"] => "2"
["textarea"] => "title summary"
["textfield"] => "title two"
}
}
然后你的循环看起来像:
<? foreach ($array as $chapter): ?>
<div class="row<? echo $chapter['hidden'] ?>">
<h2><? echo $chapter['textfield'] ?></h2>
<h3><? echo $chapter['textarea'] ?></h3>
</div>
<? endforeach; ?>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)