概要
wp_is_stream
関数は、パス名がストリームURLか調べるための関数です。具体的には、ファイルシステムやHTTPリクエストによるストリームアクセスをサポートするために使用されます。これにより、指定されたパスがストリームアクセス可能なURLかどうかを確認できます。この関数は、以下のような機能の実装時に特に有用です。
- ストリームを使ったファイルのアップロード機能。
- リモートファイルの取得処理。
- 自動バックアップ機能の実装。
- カスタムデータソースからのデータ取得。
- ストリームプロトコルを利用したキャッシュシステム。
- サードパーティAPIからのデータフェッチ。
- 動的なメディアストリームの実装。
- リソースの効率的な管理やロギング機能。
構文
wp_is_stream( string $url )
パラメータ
$url
(string): 確認するストリームURL。
戻り値
- (bool):
$url
がストリームURLであればtrue
を返し、そうでなければfalse
を返します。
関連する関数
使用可能なバージョン
- WordPress 2.8.0 以降で使用可能です。
コアファイルのパス
wp-includes/functions.php
この関数のアクションでの使用可能性
アクション名 | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | 〇 |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | 〇 |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
非推奨/削除されたバージョン
特定のバージョンで非推奨又は削除された情報はありません。
サンプルコード
サンプルコード1: ストリームURLの確認
$url = 'https://example.com/media/file.mp3';
if ( wp_is_stream( $url ) ) {
echo 'これはストリームURLです。';
} else {
echo 'これはストリームURLではありません。';
}
説明: 指定したURLがストリームURLかどうかを確認し、その結果を出力します。
サンプルコード2: ストリームによるファイルの取得
function get_remote_content( $url ) {
if ( wp_is_stream( $url ) ) {
return file_get_contents( $url );
}
return false;
}
$content = get_remote_content( 'http://example.com/remote-file.txt' );
if ( $content ) {
echo $content;
}
説明: 渡されたURLがストリームURLの場合、その内容を取得して表示します。
サンプルコード3: メディアファイルのストリーム判定
function is_media_stream( $url ) {
return wp_is_stream( $url );
}
if ( is_media_stream( 'ftp://example.com/uploads/image.jpg' ) ) {
echo 'メディアファイルに対応しています。';
}
説明: メディアファイルのURLがストリーム対応かどうかを判定します。
サンプルコード4: ストリームのリスト表示
$stream_urls = [
'https://site.com/video.mp4',
'ftp://ftp.site.com/file.txt',
'http://site.com/image.png',
];
foreach ( $stream_urls as $url ) {
if ( wp_is_stream( $url ) ) {
echo $url . ' はストリームURLです。<br>';
}
}
説明: 複数のURLをループし、それぞれがストリームURLかどうかをチェックして表示します。
サンプルコード5: ストリームURLのフィルタリング
function filter_stream_urls( $urls ) {
return array_filter( $urls, 'wp_is_stream' );
}
$urls = [
'https://example.com/path/to/resource',
'local-file.txt',
'http://example.com/image.png',
];
$stream_urls = filter_stream_urls( $urls );
print_r( $stream_urls );
説明: 与えられたURLの配列から、ストリームURLのみをフィルタリングして表示します。