PHPからXMLを出力するサンプルコード

PHPでXMLを扱う場合、SimpleXMLやDOMを使うというのが一般的なようですが、今回はそれらは使わずに単に出力したいXML形式の文字列を生成してそれ出力するというサンプルコードです。

サンプルコードの処理内容は、MySQLのテーブルからスレッドIDを取得してURLを生成し、Googleのウェブマスターツールに登録するためにSitemapプロトコルに対応したXMLを出力するというものです。

<?php
//------------------------------------------------------------------------------
//    sitemap.php
//------------------------------------------------------------------------------

mb_language("Japanese");
mb_internal_encoding("UTF-8");

require_once('./config.php');
require_once('./util.php');

$siteurl = SITE_URL;
$itemlist = <<<EOL
   <url>
    <loc>$siteurl</loc>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
   </url>
EOL;

// DB接続
$dbh =_db_connect();

$sql = "SELECT threadid FROM thread WHERE status = 1 ORDER BY threadid";

$result = mysql_query($sql, $dbh);
if (!$result) {
    _error("SQL Error: " . mysql_error() . "\n");
}

while ($row = mysql_fetch_assoc($result)) {
    $itemurl = SITE_URL . '?thread=' . $row['threadid'];
    $itemlist .= <<<EOL
   <url>
    <loc>$itemurl</loc>
    <changefreq>daily</changefreq>
    <priority>0.7</priority>
   </url>
EOL;

}
mysql_free_result($result);

$sitemap = <<<EOL
<?xml version="1.0" encoding="UTF-8"?>
  <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   $itemlist
  </urlset>
EOL;

mysql_close($dbh);

header("Content-Type: text/xml; charset=utf-8");
echo $sitemap;

exit();

?>

上記のようなベタなやり方でなく、SimpleXMLやDOMを使いたいという場合は、以下のページが参考になると思います。

PHP 開発者のための XML: 第 1 回 PHP での XML を 15 分で学ぶ

プロになるための PHPプログラミング入門
技術評論社 著者:星野 香保子


amazon.co.jpのカスタマーレビューを見る
powered by amalink

[2286] Posted by kagahiro at 2013/02/21 20:19:18
オープン | 0 point | Link (1) | Trackback (0) | Comment (0)

キーワード

PHP XML サンプル コード 

ジャパンのホームページ


PHPからXMLを出力するサンプルコード 関連リンク

PHPメールフォームのサンプルスクリプト
PHPの開発環境でプログラムからメールを送信できるかチェックするために作成した、ごく簡単なメールフォームのサンプルスクリプト(プログラム)です。mailmform.PHPを実行すると入力フォームが表示...

PHPからXMLを出力するサンプルコード トラックバック

トラックバックURL :


PHPからXMLを出力するサンプルコードへのコメント


詳細の入力フィールドを表示する

おすすめ  (チェックしてコメントすると最新情報に掲載)
コメント :

< 前の投稿      次の投稿 >

アクセスランキング

今日のアクセスランキング TOP 10

  1. 囲碁(いご) (2 PV)
  2. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (2 PV)
  3. ドル円(USDJPY)で爆益を狙うハイリスクハイリターンのMT4向けナンピンマーチンEA「Hyper Dollar」 (2 PV)
  4. 爆益を狙うハイリスクハイリターンのナンピンマーチンEA「Hyper Dollar MT5」 (2 PV)
  5. 「国家非常事態」トランプ米大統領が日本に24%の関税を課すと表明 日経平均株価が急落 (2 PV)
  6. MT4向け無料ヘッジ(両建て)ツール(EA)「STOPPER FREE」 #自動売買 #FX (2 PV)
  7. 「Million Dollar MT5」のナンピンマーチン大会(#MCC2023)での設定 (2 PV)
  8. Eclipse(エクリプス) (2 PV)
  9. 「SQLite」に深刻なセキュリティ上の脆弱性 #データベースエンジン (2 PV)
  10. 今日(2020年5月26日、火曜日)の為替相場予想 #ドル円 #ユーロドル #ポンドドル #FX #デイトレード (2 PV)

今月のアクセスランキング TOP 10

  1. 2NN 2ちゃんねるニュース速報+ナビ (9 PV)
  2. Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (7 PV)
  3. 爆益を狙うハイリスクハイリターンのナンピンマーチンEA「Hyper Dollar MT5」 (6 PV)
  4. Google(グーグル)検索 日本版 - ウェブ、画像の検索 (6 PV)
  5. ドル円(USDJPY)で爆益を狙うハイリスクハイリターンのMT4向けナンピンマーチンEA「Hyper Dollar」 (5 PV)
  6. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (5 PV)
  7. 究極の爆益ゴールドナンピンマーチンEA「Extreme(エクストリーム)」 MT4向け (5 PV)
  8. 仲値トレードが簡単にできる無料EA「NAKANE3」 #MT4 (5 PV)
  9. YouTube(ユーチューブ)日本版 - 動画共有、ライブ配信 (4 PV)
  10. 今日(2020年5月26日、火曜日)の為替相場予想 #ドル円 #ユーロドル #ポンドドル #FX #デイトレード (4 PV)

アクセス統計

ディレクトリ

関連サイト