ホームページ >php教程 >php手册 >PHP 置換テンプレート変数の実装手順

PHP 置換テンプレート変数の実装手順

WBOY
WBOYオリジナル
2016-06-13 12:21:561086ブラウズ

1. まず、ファイルを開く必要があります。ここでは PHP が使用されます。>fopen(); 関数
定義と使用法
fopen() 関数は、ファイルまたは URL を開きます。
オープンに失敗した場合、この関数は FALSE を返します。
関数プロトタイプ:
fopen(filename,mode,include_path,context)
http://www.jb51.net/w3school/php/func_filesystem_fopen.asp.htm
説明
fopen( ) filename で指定された名前リソースをストリームにバインドします。ファイル名が「scheme://...」の形式である場合、それは URL として扱われ、PHP はスキームを処理するためのプロトコル ハンドラー (ラッパー プロトコルとも呼ばれます) を検索します。ラッパー プロトコルがそのプロトコルに登録されていない場合、PHP はスクリプト内の潜在的な問題をチェックするのに役立つメッセージを発行し、ファイル名が通常のファイル名であるかのように実行を続行します。
PHP が filename がローカル ファイルを指定していると判断した場合、そのファイルのストリームを開こうとします。ファイルは PHP からアクセスできる必要があるため、ファイル アクセス許可でそのアクセスが許可されていることを確認する必要があります。セーフ モードまたは open_basedir がアクティブ化されている場合は、さらに制限が適用されます。
ファイル名が登録されたプロトコルを指定しており、そのプロトコルがネットワーク URL として登録されていると PHP が判断した場合、PHP は、allow_url_fopen がアクティブ化されていることを確認します。閉じている場合、PHP は警告を発行し、fopen の呼び出しは失敗します。
コンテキストのサポートは PHP 5.0.0 で追加されました。
ヒントとメモ
注: 移植性の理由から、fopen() でファイルを開くときは常に「b」フラグを使用することを強くお勧めします。
2. このファイルを開いた後、PHP ->fread() 関数が使用されます。
fread() 関数の読み込みファイル (安全です)バイナリ ファイルで使用します)。
関数プロトタイプ:
fread(file,length) //注: この関数で取得されるファイルのサイズはバイト単位で計算されます。
http://www.jb51. net/w3school/php/func_filesystem_fread.asp.htm
説明
fread() は、ファイル ポインター ファイルから最大 length バイトを読み取ります。この関数は、最大 length バイトの読み取り後、または EOF に達したとき、または (ネットワーク ストリームの場合) パケットが使用可能になったとき、または (ユーザー空間ストリームを開いた後) 8192 バイトの読み取りが完了したときに呼び出されます。どの条件が最初に発生したかに応じて異なります。
読み取った文字列を返します。エラーが発生した場合は false を返します。
ヒントとメモ
ヒント: ファイルの内容を文字列として読み込むだけの場合は、fread() よりもパフォーマンスがはるかに優れた file_get_contents() を使用してください。
例 1
ファイルから 10 バイトを読み取ります:

コードをコピーします コードは次のとおりです:

$file = fopen("test.txt","r");
fclose($file); >

;
例 2
ファイル全体を読み取ります:




コードをコピーします

コードは次のとおりです: < ;?php

$file = fopen("test.txt","r");

fread($file,filesize("test.txt"));
fclose($file); 🎜>?>




3. ここでは、PHP 関数

str_replace() を使用します。文字列内の他の文字を置き換える文字列。
関数プロトタイプ: str_replace(find,replace,string,count) http://www.jb51.net/w3school/php/func_string_str_replace.asp.htm
ヒントとコメント
注: この関数では大文字と小文字が区別されます。大文字と小文字を区別しない検索を実行するには、str_ireplace() を使用してください。
注: この関数はバイナリ セーフです。
3. テンプレート変数を置き換えた後、出力
エンコーディング部分に PHP->echo(); 関数を使用します:



コードをコピーします

コードは次のとおりです:

$title="テストのタイトル"; $file="テストの内容" //このテンプレートを開きます

$tempdata=fopen( "test.html" ,"r");

// テンプレートのコンテンツを読み取ります
$str=fread($tempdata,filesize("test.html"));
//テンプレート内のコンテンツ
$str=str_replace('{$title}',$title,$str);
$str=str_replace('{$center}',$file,$str); >//出力
echo $str;

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。