0

スクリプトを PHP4 から PHP5 にアップグレードしようとしていますが、foreach に問題があります。私はオンラインで調べましたが、自分のスクリプトで機能するものを見つけることができませんでした。

基本的に問題は、$filmid9$event['venueID']行目と 13 行目が認識されず、配列が空を返すことです。$filmidandに値を割り当てることで機能させることができます$event['venueID']が、明らかにそれはポイントを完全に無効にします。

基本的に、スクリプトが機能するようにこれらを書き直すにはどうすればよいですか? if($event['titleID'] == $filmid ){ and if($venue['venueID'] == $event['venueID']){

ここに私が使用しているデータがあります:

<listing>
<venueList>
<venue venueID="vxappfil">
</venue>
</venueList>
<titleList>
<title titleID="txgrewhi3">
<titleName>The Great White Silence</titleName>
</title> 
</titleList>
<eventList>
<event titleID="txgrewhi3" venueID="vxappfil">
<startDate>03/08/2012</startDate>
<endDate>09/08/2012</endDate>
<times>Sun 19:00</times>
</event>
</eventList>
</listing>

コードは次のとおりです。

foreach ($thisweeksxml->titleList->title as $title) {
    $filmid = $title['titleID'];
    ......


    $thiweekscinemasnamesarray = array();
    foreach ($thisweeksxml->eventList->event as $event) { 

        if($event['titleID'] == $filmid ){

            foreach ($thisweeksxml->venueList->venue as $venue) {

                if($venue['venueID'] == $event['venueID']){


                    $cityname = strtolower(str_replace ($removeChars, "", $venue->venueAddress->town));
                    $venuname = strtolower(str_replace ($removeChars, "", $venue->venueName));
                    $thiweekscinemasnamesarray[] = ("- <a href='/cinema/".$cityname."-".$venuname.".html'><font size='-2' style='line-height:15pt'>".$venue->venueAddress->town.", ".$venue->venueName."</font></a>");

                }

            }   

        }

    }

    sort($thiweekscinemasnamesarray);
    foreach($thiweekscinemasnamesarray as $lastweek){

    $bodycontent .="".$lastweek."<br>";

}
4

2 に答える 2

0

最後の foreach ループに } がありません

于 2012-08-13T12:30:37.927 に答える
0

ここで作業するのに十分な情報はありませんが、配列としてアクセスしている変数は実際にはオブジェクトであると思います。

したがって、次のように変更することをお勧めします。

$event['titleID']

の中へ

$event->titleID

これが機能する場合、素晴らしいです。それが機能しない場合は、または$thisweeksxmlの出力を提供して、の構造について詳しく示す必要があります。(元の質問に編集してください)var_dump($thisweeksxml)print_r($thisweeksxml)

于 2012-08-13T12:30:49.170 に答える