PHPはファイル操作を行うこともできる。PHPが面白いのは、ローカルマシンにあるファイルと、インターネット上(URL表記)のコンテンツを同等に扱うことができる点だ。
そこで今回は、最近βテストがはじまったGoogle News日本語からリアルタイムでコンテンツを読み込み、タイトルだけ抽出して表示するプログラムを紹介する。
Google News日本語版からタイトルだけ抽出し、画面に表示するプログラム
0001: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
0002: <html>
0003: <meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
0004: <title>Googleニュースより</title>
0005: <body>
0006: <p><b>Googleニュースより</b>-
0007: <?=date("n月j日G時\n") ?></p>
0008: <?php
0009: // ここからPHPプログラム =======================================================
0010: /** googlenews.php
0011: * Google Newsからヘッダのみ取り出して表示する
0012: * @copyright (c)studio pahoo
0013: * @author パパぱふぅ
0014: * @version 2.1 2004/10/13
0015: */
0016:
0017: /**
0018: * Google NewsのURL
0019: * @global String $InputFile
0020: */
0021: $InputFile = "http://news.google.co.jp/news?ned=tjp";
0022:
0023: /**
0024: * ニュースのヘッダにマッチする正規表現
0025: * @global String $Pattern
0026: */
0027: $Pattern = "/(<a.*id=r[0-9|\-]+><b>)(.*)(<\/b><\/a>)/";
0028:
0029: //メインプログラム
0030: mb_internal_encoding("SJIS"); //Google newsのエンコーディングはShift_JIS
0031:
0032: $fp = fopen($InputFile, "r");
0033: if ($fp == FALSE) { //ファイルオープン・エラー
0034: echo "error:Google Newsを読み込めませんでした!";
0035: exit();
0036: }
0037: //コンテンツを1行ずつ読み込んで処理する
0038: while (!feof($fp)) {
0039: $s = fgets($fp);
0040: $n = preg_match_all($Pattern, $s, $ar, PREG_SET_ORDER);
0041: //マッチングしたすべての箇所を表示する
0042: for ($i = 0; $i < $n; $i++) print "・" . $ar[$i][2] . "<br />\n";
0043: }
0044: fclose($fp);
0045: // ここまでPHPプログラム =======================================================
0046: ?>
0047: <p><img src="http://www.google.co.jp/logos/powered_by_google_135x35.gif" /></p>
0048: </body>
0049:
| 2004年11月14日更新 | ||
| <<前へ | <目次> | 次へ>> |
| 戻る | 【関連ページ】 | |