按字母顺序排列SimpleXML条目

时间:2012-02-21 10:15:25

标签: php foreach simplexml alphabetical

这是我关于stackoverflow的第一个问题。我经常试着自己寻找答案,但这次我似乎陷入困境。

关于我自己的一点背景:我对PHP没有深入的了解,但我每天都在用css和html工作。我对循环如何工作有很好的理解,如果是while语句等(多年来与python和pascal一起工作)。我现在正试图用php拓宽我的网页设计知识。

作为我自己的练习我正在尝试制作自己的电影库。我已经在html中做了那个(你好无用的工作),现在我用php / simplexml转换它。 看着php.net和其他在线资源,我设法推出了以下结构:

XML

<film>
    <title>Great Movie</title>
    <link>http://imdb.com/#</link>  
    <poster>img-name</poster>
    <year>2012</year>
</film>

为我的每部电影重复,当然所有电影都在根标签<film></film>

内 php而不是如下:

<ul>
<?php
$xml = new SimpleXMLElement ('database.xml',NULL,true);
foreach($xml->film as $movie)
{

echo "<li>\n";
echo "<div class=\"film_container\">\n";
echo "<div class=\"poster\">\n";
echo "<a href=\"".$movie->link."\"><img src=\"img/".$movie->poster.".jpg\" /></a>\n";
echo "</div>";
echo "<div class=\"info\">\n";
echo "<h2>".$movie->title."</h2>\n";
echo "<p>".$movie->year."</p>\n";
echo "</div>\n";
echo "</div>\n";
echo "</li>\n";

}
?>
</ul>
再一次,非常简单。这只是让我布置我需要的所有信息,然后用css打造它们。

现在,棘手的部分来了。因为我的html库中已有200多部电影,所有这些都是按字母顺序手动列出的(是的,我知道......)现在开始添加没有订单的新条目似乎毫无意义,但为了将来的参考,我想要要知道是否有办法,只需在xml的末尾添加一个新条目,然后在循环时自动放置在正确的位置。

我在互联网上看起来相当广泛,是的,我找到了多种解决方案,按字母顺序排序您的条目,但是当您打印出排序结果时(例如我按名称排序所有电影,然后我可以)打印出按字母顺序用var_dump函数排序的整个电影列表),但我完全不知道在将它们整理出来再次通过xml并分别阅读它们之后放在foreach语句中的内容。

提前感谢大家,好吧,只需阅读我的文字墙。如果我写得太多,我很抱歉,但我不知道别人怎么解释自己。我非常肯定答案会有所帮助'这很简单,你只是忽略了手册中的那一部分......'

0 个答案:

没有答案