我设法实现了特定的数据库数组顺序,现在我想以适当的组合打印它,但我不知道'foreach'循环应该是什么样子。
我现在拥有的是:
$textfields = get_settings('test_testbutton');
if (!empty($textfields)) {
foreach ($textfields as $textfield) {
?>
<p>
<input type="text" id="<?php echo $value['id']; ?>" name="test_testbutton[0][]" value="<?php echo $textfield; ?>" placeholder="Input Value"/>
<input type="text" id="<?php echo $value['id']; ?>" name="test_testbutton[1][]" value="<?php echo $textfield; ?>" placeholder="Input Value"/>
<a href="#" id="removebutton">Remove</a>
</p>
<?php
}
} else {
}
我真的不知道如何更改'echo $ textfield'并使其正常工作。我尝试将[]添加到'$ textfields'值然后回显$ textfield []或$ textfield [0],但没有成功:(
我附上了一个.jpg文件,以使其更容易理解。
答案 0 :(得分:1)
更新后。你似乎忘记了一个foreach。我希望实现你想要的东西是有帮助的。
// Following your dump
$textfields = array( 0 => array( 1234, "qwer", "abcd"), 1 => array("5678", "tyui", "efgh"));
if (!empty($textfields)) {
foreach ($textfields as $textfield) {
// First loop : 0 => array( 1234, "qwer", "abcd")
// Second loop: 1 => array("5678", "tyui", "efgh")
foreach ($textfield as $oneValue) {
// Loop on the second array $textfield
}
}
答案 1 :(得分:0)
附加图像中的文本是序列化数组,因此如果要在此文本上使用foreach
,则必须unserialize
,然后创建一个数组
$arr = unserialize($textfields);
答案 2 :(得分:0)
我认为这会对你有帮助,并且会起作用:)
$textfields_data = get_settings('test_testbutton');
if (!empty($textfields_data))
{
$textfields = unserialize($textfields_data);
$i = 0;
foreach ($textfields as $textfield) {
?>
<p>
<input type="text" id="" name="test_testbutton1_<?php echo $i; ?>" value="<?php echo $textfield[$i]; ?>" placeholder="Input Value"/>
<input type="text" id="" name="test_testbutton2_<?php echo $i; ?>" value="<?php echo $textfield[$i]; ?>" placeholder="Input Value"/>
<a href="#" id="removebutton">Remove</a>
</p>
<?php
$i++;
}
}
else
{
}