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
オープン | 0 point | Link (1) | Trackback (0) | Comment (0)
キーワード
PHPからXMLを出力するサンプルコード 関連リンク
PHPメールフォームのサンプルスクリプト | |
PHPの開発環境でプログラムからメールを送信できるかチェックするために作成した、ごく簡単なメールフォームのサンプルスクリプト(プログラム)です。mailmform.PHPを実行すると入力フォームが表示... |
PHPからXMLを出力するサンプルコード トラックバック
トラックバックURL :
PHPからXMLを出力するサンプルコードへのコメント
アクセスランキング
今日のアクセスランキング TOP 10
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (40 PV)
- 2NN 2ちゃんねるニュース速報+ナビ (8 PV)
- 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (5 PV)
- 無料のMT4向けナンピンマーチン爆益(爆損)EA「Jipangu(ジパング)」 (4 PV)
- 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (3 PV)
- [FX]高値更新・安値更新でエントリー、MT4向け無料スキャルピングEA「1Scalper」#システムトレード (3 PV)
- [FX]裁量ポジションを簡単に管理できるMT4向け無料の裁量補助EA「PositionKeeper」 (3 PV)
- 2chまとめサイト - 痛いニュース(ノ∀`) (3 PV)
- [FX]裁量ポジションの管理が簡単にできるMT4向け無料ツール(EA)「PositionKeeper」をバージョンアップ(Ver 1.03) (2 PV)
- SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (2 PV)
今月のアクセスランキング TOP 10
- 2NN 2ちゃんねるニュース速報+ナビ (3273 PV)
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (488 PV)
- 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (91 PV)
- 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (89 PV)
- SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (70 PV)
- Million Dollar Ver 1.09向けの収益性を重視したゴールド(Gold、XAUUSD)ロングセットファイル (64 PV)
- 無料のMT4向けナンピンマーチン爆益(爆損)EA「Jipangu(ジパング)」 (62 PV)
- 仲値トレードが簡単にできる無料EA「NAKANE3 Ver 2.04」 #MT4 (59 PV)
- [FX]裁量ポジションを簡単に管理できるMT4向け無料の裁量補助EA「PositionKeeper」 (51 PV)
- 2chまとめサイト - 痛いニュース(ノ∀`) (46 PV)
アクセス統計
ディレクトリ
関連サイト