输出Joomla子表格
好的,我试过从stackexchange的另一个建议的信息,但我似乎失去了一些东西。输出Joomla子表格
我在管理视图中为我正在工作的组件(他们以前是可重复的字段)的子窗体。管理员工作完美,但我无法让json在前端网站视图上正确显示。
被拉入视图的字段在布局中,所以它与站点视图($ displayData而不是$ items)有点不同。在现场
在DB我有一个名为家电领域,4项是{"appliances1":{"appliance_type":"Dishwasher"},"appliances2":{"appliance_type":"Range"},"appliances3":{"appliance_type":"Microwave"},"appliances4":{"appliance_type":"Washer/Dryer"}}
确定。这看起来不错,格式正确。
在前端,在布局的观点,我有:
<?php
print_r($displayData->appliances);
foreach ($displayData->appliances as $item) : ?> <div>
<p>
<?php echo $displayData->appliance_type; ?>
</p>
</div>
<?php endforeach; ?>
的print_r
显示:
Appliances Array ([appliances1] => Array ([appliance_type] => Dishwasher) [appliances2] => Array ([appliance_type] => Range) [appliances3] => Array ([appliance_type] => Microwave) [appliances4] => Array ([appliance_type] => Washer/Dryer))
确定。再次,这看起来不错。我会尽快删除它的工作正常。
的问题是,
<p>
<?php echo $displayData->appliance_type; ?>
</p>
不显示任何内容。
我可以在代码中看到,它正确地做的foreach,但它不是从数组抓取任何内容:
Array ([appliances1] => Array ([appliance_type] => Dishwasher) [appliances2] => Array ([appliance_type] => Range) [appliances3] => Array ([appliance_type] => Microwave) [appliances4] => Array ([appliance_type] => Washer/Dryer)) <div> <p> </p> </div> <div> <p> </p> </div> <div> <p> </p> </div> <div> <p> </p> </div>
什么我可能会丢失有什么想法?
好的。直到我解决这个问题时,我才知道自己无法入睡。它可能不是最干净的,但是,但是这适用于从一个Joomla子窗体输出数据:
<?php $records = $displayData->appliances; ?>
<?php foreach ($records as $key => $value) {
echo $value["appliance_type"] ."<br>";
}
?>
结果:<?= $ displayData->?
Appliances
Dishwasher
Range
Microwave
Washer/Dryer
感谢您回复并发布答案 – Eoin
尝试'appliances1-> appliance_type> ',虽然print_r显示的是数组:\'' –
潜在的问题是,子表单为每个新条目添加不同的数字:appliance1,appliance2,家电3等 –
您可能需要将其传递给array_walk或其他设备,并将其标准化以供使用。你不能简单地跳过一个级别,并期望它的工作。 –