php://filter は、フィルター プログラムを開いたときにストリームになるように設計されたラッパー プロトコルです。これは、それ自体で完全な機能を持つ readfile()、file()、file_get_contents() などのファイル関数に役立ちます。そうしないと、コンテンツを読み取る前にストリームにフィルターを適用する機会がなくなるからです。
プロトコル構文は
php://filter:/
例: php://filter:/resource=http://www.baidu.com
Use php://filter to get Web content
<p class="sycode"> <? php $url = ' http://www.phpfamily.cn ' ; $data = file_get_contents ( ' php://filter/resource= ' . $url ); echo $data ; //输出结果我http://www.phpfamily.cn页面的内容 </p>
php://filterparameter list
read
resource データソース(必須)
readパラメータ値できる
string.strip_tags データ ストリーム内のすべての HTML タグをクリアします
string.toupper データ ストリーム内のコンテンツを大文字に変換します
string.to lower データ ストリーム内のコンテンツを小文字に変換します
convert .base64-encodeデータ ストリームを Base64 エンコードに変換する
例:
<p class="sycode"> <? php $url = ' http://www.phpfamily.cn ' ; $data = file_get_contents ( ' php://filter/read=string.strip_tags/resource= ' . $url ); echo $data ; //输出结果为过滤html标签后的存文本内容 </p>
string.strip_tags を使用してデータを処理することは、strip _tags 関数と同等です。操作はデータを取得するときに同期されます。
他のパラメータの使用方法も同じです。
このようなフィルタカプセル化プロトコルは多数あります。詳細については、php
http:// docs の公式 Web サイトを確認できます。 php.net/manual/zh/wrappers.php
このようなストリームラッパーも自分で作成しました
関数は stream_wapper_register を使用しました。方法については、公式 Web サイトにアクセスしてください。