我在尝试回显数组特定部分的每次迭代时遇到了麻烦。
以下是线索。我不能把它们拼凑起来(因为我还不太了解php数组)。
如果我执行以下操作:
<?php
$audiofile = simple_fields_value("audiofile");
echo $audiofile['url'];
?>
我得到了文件的URL,这就是我想要的。 但是,我有四个不同的URL(一个“二维数组”,我相信?),我想回应每一个。
根据Simple Fields文档,我知道我需要将第二行更改为:
$audiofile = simple_fields_values("audiofile");
这导致我按如下方式更改php:
<?php
$audiofile = simple_fields_values("audiofile");
for($i=0;$i<count($audiofile);$i++)
{
echo $audiofile[$i];
}
?>
但这只能回应“ArrayArrayArrayArray”。
这是有道理的,因为$ audiofile正在返回一个信息数组,FROM我只想要['url']。
所以,我尝试了以下内容:
<?php
$audiofile = simple_fields_values("audiofile");
for($i=0;$i<count($audiofile);$i++)
{
echo $audiofile['url'][$i];
}
?>
但那回声无效。
有什么想法吗?
答案 0 :(得分:5)
我认为你可能有你的数组键顺序是全部。你试过把['url'] [$ i]翻到[$ i] ['url']吗?像这样:
<?php
$audiofile = simple_fields_values("audiofile");
for($i=0;$i<count($audiofile);$i++) {
echo $audiofile[$i]['url'];
}
?>
答案 1 :(得分:0)
您可以这样做:
<?php
$audiofile = simple_fields_values("audiofile");
for($i=0;$i<count($audiofile);$i++)
{
print_r($audiofile[$i]);
}
?>
或执行var_dump
<?php
$audiofile = simple_fields_values("audiofile");
for($i=0;$i<count($audiofile);$i++)
{
var_dump($audiofile[$i]);
}
?>
答案 2 :(得分:0)
为什么不使用foreach构造?
$audiofile = simple_fields_values("audiofile");
foreach ($audiofile as $key => $value) {
echo $audiofile[$key]['url'];
}
它比for
周期更少,基本上你不必自己计算项目并增加索引,因为foreach
是专门构建来迭代php数组的。