我是一个相当新的PHP新手,还在为最简单的任务而苦恼。我在互联网上找了很多地方,但都没有找到合适的解决方案。
假设我有两个页面:一个是index.php,我想在这里显示一个超链接的列表,以及这些链接所指向的页面的名称。另一个是function.php,我在这里存储了一个包含我的链接和标题的数组。另外,我知道数组可以存放在比function.php更好的地方,但这不是重点,现在。
这是我在index.php页面的HTML:
<ul class="row">
<li class="col-6 col-lg-4">
<a class="hyperlink" href="<?php echo $pageitem['link'] ?>">
<div class="page-item">
<**SVG icon goes here, disregard**>
<span><?php echo $pageitem['title'] ?></span>
</div>
</a>
</li>
<li class="col-6 col-lg-4">
<a class="hyperlink" href="<?php echo $pageitem['link'] ?>">
<div class="page-item">
<**SVG icon goes here, disregard**>
<span><?php echo $pageitem['title'] ?></span>
</div>
</a>
</li>
<li class="col-6 col-lg-4">
<a class="hyperlink" href="<?php echo $pageitem['link'] ?>">
<div class="page-item">
<**SVG icon goes here, disregard**>
<span><?php echo $pageitem['title'] ?></span>
</div>
</a>
</li>
</ul>
这是我的数组
$pageitems = array (
array('link' => 'https://website-one.com', 'title' => 'Website 1'),
array('link' => 'https://website-two.com', 'title' => 'Website 2'),
array('link' => 'https://website-three.com', 'title' => 'Website 3'),
);
这是我的函数,我希望它能在每个子数组中循环并在index.php页面的页面项中显示链接和标题:
$i = 0;
foreach ( $pageitems as $pageitem ) {
$i++;
foreach ( $pageitem as $key => $value )
{
return $pageitem['link'];
return $pageitem['title'];
}
}
但是没有--它只在index页面的每个页面项中重复第一个链接和标题对(website-one.com, Website 1),就像循环在第一次迭代后被卡住一样。
我想你必须对你所拥有的数组进行迭代,然后把你的 li
内的foreach循环,像这样。
<ul class="row">
<?php
$pageitems = array (
array('link' => 'https://website-one.com', 'title' => 'Website 1'),
array('link' => 'https://website-two.com', 'title' => 'Website 2'),
array('link' => 'https://website-three.com', 'title' => 'Website 3'),
);
foreach ($pageitems as $pageitem) {
?>
<li class="col-6 col-lg-4">
<a class="hyperlink" href="<?php echo $pageitem['link'] ?>">
<div class="page-item">
<**SVG icon goes here, disregard**>
<span><?php echo $pageitem['title'] ?></span>
</div>
</a>
</li>
<?php
}
?>
</ul>
如果对你来说,最好是有一个... $pageitems
在不同的文件中,您可以使用 include('function.php');
foreach循环之前的任何一点。