2009年03月05日 16:15

指定ディレクトリ内のファイルのタイトルを取得してリンクを作成

| http://www.kantenna.com/cgi-bin/mt/mt-tb.cgi/446

ディレクトリ内のファイルを取得する場合、opendir()使って やってましたがglob()という便利なものがあるんですね。

リャマ本こと

初めてのPerl

著者 : ランダル・L. シュワルツ / 金額 : ¥ 3,780

を読んでて知りました。Perlの本だけどPHPの勉強にもなります。

指定ディレクトリのタイトルを取得してリンクを作成

とりあえず多少エントリのある http://www.kantenna.com/pg/2009/01/ 内のphpファイルへのリンクを作ります。

サンプルコード


// 取得したいファイルがあるディレクトリ
// DS = DIRECTORY_SEPARATOR
$target = DS . "pg" . DS . "2009" . DS . "01" . DS;

// タイトル格納用
$titles = array();

// 作業ディレクトリの移動
chdir($_SERVER["DOCUMENT_ROOT"] . $target);

// .phpファイルを取得して title の中身を取得
foreach (glob("*.php") as $filename) {

    $handle = fopen($filename, "r");

    while (!feof($handle)) {
        $line = fgets($handle);
        if (preg_match("/<title>.*<\/title>/", $line, $match)) {
            $titles[] = array(strip_tags($match[0]), $filename);
            fclose($handle);
            break;
        }
    }

}

// 出力
echo "<ul>";
foreach ($titles as $values) {
    printf('<li><a href="%s">%s</a></li>', $target . $values[1], $values[0]);
}
echo "</ul>";


実行結果

入門PHPセキュリティ

著者 : Chris Shiflett / 金額 : ¥ 1,890

指定ディレクトリ内のファイルのタイトルを取得してリンクを作成タグ:

トラックバック

  • http://www.kantenna.com/cgi-bin/mt/mt-tb.cgi/446
[WEBプログラム覚書]2009年05月15日 12:24
PHP Array関数いろいろ
PHPには配列を操作する関数がたくさんあるのでちょっとずつ試してみる。
コメント (0)
コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)





この情報を登録しますか?


先月アクセスが多かったページ