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. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (27 PV)
  2. 究極の爆益ゴールドナンピンマーチンEA「Extreme(エクストリーム)」 MT4向け (9 PV)
  3. 無料掲示板CGIのダウンロード (5 PV)
  4. 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (4 PV)
  5. 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (3 PV)
  6. 「Scalpin」スキャルピングとナンピンマーチンを組み合わせたスキャルピングツール(半手動半自動EA) (3 PV)
  7. 究極の爆益ゴールドナンピンマーチンEA「Extreme MT5」 (3 PV)
  8. 低レバレッジでドル円ロング、安全性最優先のMT4向けの無料EA「DOLLON(ドロン)」 (2 PV)
  9. 完全無料のMT5用ナンピンEA「Nanpin K(ナンピンケイ) MT5」 使用制限無し (2 PV)
  10. 自作のMT5向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)の一覧 #MT5 #FX (2 PV)

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

  1. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (220 PV)
  2. 究極の爆益ゴールドナンピンマーチンEA「Extreme(エクストリーム)」 MT4向け (90 PV)
  3. 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (89 PV)
  4. 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (65 PV)
  5. 究極の爆益ゴールドナンピンマーチンEA「Extreme MT5」 (56 PV)
  6. 無料掲示板CGIのダウンロード (50 PV)
  7. 2NN 2ちゃんねるニュース速報+ナビ (30 PV)
  8. SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (27 PV)
  9. 使用制限無し完全無料のMT4向けナンピンEA「Nanpin K(ナンピンケイ)」 (22 PV)
  10. 完全無料のMT5用ナンピンEA「Nanpin K(ナンピンケイ) MT5」 使用制限無し (22 PV)

アクセス統計

ディレクトリ

関連サイト