前提・実現したいこと
以下の記事を参考にPHPにてRSSを定期的に取得するようにしたいです。
https://rfs.jp/sb/javascript/03js/get-rss.html
発生している問題・エラーメッセージ
RSS feedのタイトル(記事タイトルではなくチャンネルタイトル)を取得する段階で、以下のエラーが表示されてしまいます。
Undefined variable: powered
該当のソースコード
PHP
1<?php 2// タイムゾーンを日本に設定 3date_default_timezone_set('Asia/Tokyo'); 4 5// 取得したいRSSのURLを設定 6$url = "https://news.yahoo.co.jp/pickup/rss.xml"; 7// MAXの表示件数を設定 8$max = 5; 9 10// simplexml_load_file()でRSSをパースしてオブジェクトを取得、オブジェクトが空でなければブロック内を処理 11if( $rss = simplexml_load_file( $url ) ){ 12 $cnt = 0; 13 $output = ''; 14 $powered = ''; 15 $powered .= '<a href="'. $rss->channel->link .'" target="_blank">' . " " . $rss->channel->title . '</a>'; 16 /* 17 * $item->title:タイトル 18 * $item->link:リンク 19 * strtotime( $item->pubDate ):更新日時のUNIX TIMESTAMP 20 * $item->description:詳細 21 */ 22 // item毎に処理 23 foreach( $rss->channel->item as $item ){ 24 // MAXの表示件数を超えたら終了 25 if( $cnt >= $max ) break; 26 27 // 日付の表記の設定 28 $date = date( 'Y年m月d', strtotime( $item->pubDate ) ); 29 // 出力する文字列を用意 30 $output .= '<a href="'. $item->link .'">' . $date . " " . $item->title . '</a><br>'; 31 $cnt++; 32 } 33 // 文字列を出力 34 file_put_contents ( "rss.xml" , '<ul>' . $output . '</ul>' . '<div class="rss_powered">' . $powered .'</div>'); 35 36} 37
試したこと
変数poweredの定義する中身を空にしたり、様々なことを試したものの、本質的に中身が理解できていないため同様のエラーが発生しています。
補足情報(FW/ツールのバージョンなど)
PHP/7.1.5
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/02 11:23