1

私はローカルホストにラジオ局のサイトを持っています.ページは一連のインクルードとリクエストです-それらはうまく機能します.

ただし、スケジュール 1 の 1 つのページでは、SimpleXML ドキュメントから抽出されたデータを DIV 内に表示しています。

これは PHP ドキュメントのコーディングです。

        <div class="itemheading"><h1><span>Programme Guide</span></h1></div>
        <div class="itembody">
          <div id="progdays">
                        <ul>
<li><a href="sunsch.php" title="Sunday">Sunday</a></li>
<li class="currentday"><a href="monsch.php">Monday</a></li>
<li><a href="tuesch.php" title="Tuesday">Tuesday</a></li>
<li><a href="wedsch.php" title="Wednesday">Wednesday</a></li>
<li><a href="thursch.php" title="Thursday">Thursday</a></li>
<li><a href="frisch.php" title="Friday">Friday</a></li>
<li><a href="satsch.php" title="Saturday">Saturday</a></li>                                             </ul>
          </div>
<?php
require("monsch.php");
?>
                                                            </div>

monsch.php の内容は次のとおりです。

        <?php

// set name of XML file
// normally this would come through GET
// it's hard-wired here for simplicity
$file = "monsched.xml";

// load file
$xml = simplexml_load_file($file) or die ("Unable to load XML file!");
?> 

                            <dl class="standard">
                <dt><a href="<?php echo $xml->link; ?>" title="<?php echo $xml->show; ?>"><?php echo $xml->showtime; ?> - <?php echo $xml->show; ?></a></dt>
                <dd class="itemimg"><a href="<?php echo $xml->link; ?>" title="<?php echo $xml->show; ?>"><img src="<?php echo $xml->image; ?>" width="100" height="75" alt="<?php echo $xml->show; ?>" title="<?php echo $xml->show; ?>" /></a></dd>
                <dd class="itemdesc">
<?php echo $xml->showinfo; ?>
                </dd>
                <dd class="itemlink">
                  <a href="<?php echo $xml->link; ?>" title="<?php echo $xml->moreinfo; ?>"><span></span><?php echo $xml->moreinfo; ?></a>
                </dd>
              </dl>

PHP の echo() 関数を使用すると正しく動作しますが、XML ファイルから複数のレコードを表示するにはどうすればよいでしょうか。

monsched.xml の XML コンテンツは次のとおりです。

<?xml version="1.0"?>
<prog>
    <link>presenter.php</link>
    <show>Johnny Doe</show>
    <image>johnny.jpg</image>
    <showtime>00:00</showtime>
    <showinfo>
        John Doe through the night
    </showinfo>
    <moreinfo>More about the show</moreinfo>
</prog>

http://devzone.zend.com/article/651のチュートリアルに従いました(最後の Baz Luhrmann の例は、私がエミュレートしようとしていたものです)。そして、1 つの問題を除いて、すべて正常に機能しました。SimpleXML を使用して、XML ファイル内の複数のレコードから PHP ファイルを読み取る方法を教えてください。

ショーがたくさんある場合、上記の形式のような XML ファイルからそれらすべてを抽出するにはどうすればよいでしょうか。

説明と画像付きのショーは次のとおりです。

01:00 Johnny Doe jdoe1.jpg
John Doe at night
06:00 Joe Smith smith1.jpg
John Smith in the morning
10:00 Mark Jones mj1.jpg
Mark plays hits
14:00 Matthew B
Matthew B
18:00 Non Stop Hits
Non-stop
20:00 Richard Roe
Richard Roe at night

私は SimpleXML にかなり慣れていませんが、Baz Luhrmann の例を複数のエントリで動作させるのは難しいです - 誰でもそれを理解できますか?

チュートリアルは他の点では役に立ちましたが、すべての質問に答えたわけではありません。

4

1 に答える 1

1

xmlをforeachに入れる必要があります:

<?php
foreach($xml as $attr) {
  $attr->link;
}
?>

私が提供できるすべてのxmlスキーマについて詳しく知らなくても、これで正しい道を考えることができます。

于 2011-07-10T14:41:49.987 に答える