たぼさんの部屋

いちょぼとのんびり

アプリケーションキャッシュ manifest.php

キャッシュするディレクトリを指定したもの

指定ディレクトリは
EFOLAB_ver5

<?php
	/**
	 * -----------------------------------------------------------------------------
	 * このファイルはアプリケーションキャッシュを行うために記述しています。
	 * -----------------------------------------------------------------------------
	 */
	
	/**
	 * PHPの関数headerを使い、cache-manifestというコンテンツタイプを指定します。
	 */
	header('Content-Type: text/cache-manifest');
    echo "CACHE MANIFEST\n";
    $hashes = "";
	/**
	 * manifest.phpからの相対パスを指定。
   	 */
   	$path = "EFOLAB_ver5";
	
    $dir = new RecursiveDirectoryIterator($path);    
    //$dir = new RecursiveDirectoryIterator(.);    //本ディレクトリを指定するとき
    
    foreach(new RecursiveIteratorIterator($dir) as $file){
    	/*
		 * ファイルである(ディレクトリでない)
		 */
        if($file->IsFile() && 
        /*
		 * マニフェストファイル自身でない
		 */
        $file != ".\manifest.php" &&
        !strpos($file, '\.') &&
        /*
		 * 隠しファイルではない
		 */
        substr($file->getFilename(), 0, 1) != "." ) {
        	/*
			 * 条件に合うファイル(htmlやスクリプト,cssファイルなど、htmlファイルのディレクトリ直下にあるファイル)
			 */
            echo $file . "\n";
            $hashes .= md5_file($file);
        }
    }
	/**
	 * 変更があったときのためにハッシュ値でコメントを書き出しておきます。
	 * どれかのファイルを変更すると、このハッシュ値が変更になりますので
	 * マニュフェスト自身が変更されたことになり、再読み込みの対象になります。
	 * つまり、更新されたファイルを再読み込みできます。
	 */
    echo " # hash: ". md5($hashes) . "\n";
    
	echo "NETWORK:"."\n";
	//ここにキャッシュ対象外のファイルを記述します。
	
	/*kamogashira writen 0314*/
	
?>