ダウンロード ソースファイル (302.5 KB)
PHPによるSMILドキュメントの生成
ここまで静的なSMILドキュメントをいくつか見てきましたが、PHPを使ってSMILを生成することもできます。まず次のヘッダー群を出力する必要があります。
header("Content-type: application/smil");
header ("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 29 Jul 2000 07:00:00 GMT");
header('Content-Disposition: attachment; filename="test.smil"');
- 最初のヘッダーは、ドキュメントにSMILコードが含まれていることをブラウザに知らせます。SMILドキュメントに対応するMIMEタイプは
application/smilです。 - 2番目のヘッダーは、キャッシュされたコンテンツを無視して最新のバージョンをダウンロードするようにブラウザに指示します。これが必要な理由は、同じURLから異なる時間に異なるドキュメントを動的に生成することもあり得るからです。
- 3番目のヘッダーは、現在の日付よりも古い日付を使用している現在のドキュメントを期限切れにします。これにより、ブラウザが現在のドキュメントをキャッシュするのを防ぎます。
Content-Disposition: attachment; filename="test.smil"ヘッダーは、動的に生成されたSMILドキュメントを他のファイルと同様にダウンロードするようにブラウザに指示します。
これらのヘッダーが揃ったら、動的なSMILドキュメント自体を生成できます。この例は前に示したものと同じ「using_images.smil」ドキュメントです。
<?php
header ("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 29 Jul 2000 07:00:00 GMT");
header ("Content-Type: application/smil");
header('Content-Disposition: attachment; filename="using_images.smil"');
?>
<!DOCTYPE smil PUBLIC "-//W3C//DTD SMIL 2.l//EN"
"http://www.w3.org/2005/SMIL2l/SMIL2l.dtd">
<smil xmlns="http://www.w3.org/2005/SMIL2l/Language">
<head>
<layout>
<root-layout width="250" height="250" backgroundColor="black" />
</layout>
</head>
<body>
<seq>
<img src="flower1.jpg" dur="1s" />
<img src="flower2.jpg" dur="2s" />
<img src="flower3.jpg" dur="3s" />
</seq>
</body>
</smil>
このコードをWebサーバーのルート直下の「smil」というフォルダに保存してください。flower1.jpg、flower2.jpg、flower3.jpgという3つの.jpgファイル(サンプルコードを参照)もsmilフォルダにコピーしてください。それが済んだら、http://localhost/http://localhost/smil/using_images.phpsmil/using_images.phpをブラウズすることで、この例を実行できます(図4を参照)。

この記事は参考になりましたか?
- japan.internet.com翻訳記事連載記事一覧
- この記事の著者
-
japan.internet.com(ジャパンインターネットコム)
japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.com や EarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
Octavia Andreea Anghel(Octavia Andreea Anghel)
経験豊富なPHP開発者。現在は、国内外のソフトウェア開発コンテストに参加するプログラミングチームの主任トレーナーを務める。国レベルの教育プロジェクト開発のコンサルティングも担当している。共著書に『XML technologies?XML in Java』があり、XML部分の執筆を担当。PHPやXML...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
