プログラミングで飯を食え。腕をあげたきゃ備忘録!

PHP、JavaScript、HTML5、CSS3などWEB系言語を中心に基本テク、備忘録をまとめます。Android、Iphoneアプリ開発についても!

外部PHPファイルを読み込んで表示する方法!レンダリング関数!

サクウェブTVはコチラ↓↓↓
サクウェブTV

外部のPHPファイルをfile_get_contens()などで読み込んで表示しようとすると、

PHPは実行されずに、ソースがそのまま表示されることになります。

そこで、レンダリング関数を作りました。

	/*
	 * 外部ファイルをレンダリングして返す
	 * 引数:読み込みたい外部ファイルのパス
	 * 戻り値:成功した場合は読み込んだ文字列、失敗した場合はFALSE
	 */
	function renderFile($file_path){
		$contents = "";
		//出力バッファリングを開始
		$para = ob_start();
		if($para){
			//出力バッファに外部ファイルを読み込む
			include($file_path);
			//出力バッファの内容を変数に入れる
			$contents = ob_get_contents();
			//出力バッファリングを終了
			ob_end_clean();
			if($contents !== false){
				return $contents;
			}else{
				return false;
			}
		}else{
			return false;	
		}
	}

使用例は以下です。

index.php
<?php 
	$r = renderFile("./render/file.php");
	if($r){
		echo $r;
	}
	
	/*
	 * 外部ファイルをレンダリングして返す
	 * 引数:読み込みたい外部ファイルのパス
	 * 戻り値:成功した場合は読み込んだ文字列、失敗した場合はFALSE
	 */
	function renderFile($file_path){
		$contents = "";
		//出力バッファリングを開始
		$para = ob_start();
		if($para){
			//出力バッファに外部ファイルを読み込む
			include($file_path);
			//出力バッファの内容を変数に入れる
			$contents = ob_get_contents();
			//出力バッファリングを終了
			ob_end_clean();
			if($contents !== false){
				return $contents;
			}else{
				return false;
			}
		}else{
			return false;	
		}
	}
?>

実行結果は、以下です。

./render/file.php
これは0番目のループです。

これは1番目のループです。

これは2番目のループです。

これは3番目のループです。

これは4番目のループです。