validate_file

説明

int validate_file( string $file [ , array $allowed_files = array() ] )
ファイルのパス名を検証する。

パラメータ

  • $file
    ファイルのパス名を指定。
  • $allowed_files
    許可するファイルのパス名を配列で指定(省略時はarray())。

返り値

検証結果を返す。

返り値意味
0問題なし
1パス名にディレクトリトラバーサルが含まれる
2Windowsファイルシステムのドライブレターを含んでいる
3パラメータ$allowed_filesが空でなく、パス名が$allowed_filesに入っていない


注意

パラメータ$fileが'C:'から始まるようなWindowsのドライブレターを含んでいる場合は返り値が2になる。


使用例

  • 変数$fileを検証する。
    <?php if ( validate_file( $file ) ) : ?>

フィルター

直接実行するフィルターはありません。

アクション

直接実行するアクションはありません。

ソースファイル

/wp-includes/functions.php

最終更新 : 2019年03月22日 11:46


お勧め

初期化に関連するアクションのおさらい(2013年11月27日 更新)

いつも何気なくfunctions.phpで使っているafter_setup_themeアクションやinitアクション。普段はあまり意識していなかったが、ふとしたことからどんな順番に呼び出されるのか気になってしまい、ちょっと調べてみた。

WP_List_Tableクラスを使ってみた(2018年5月27日 更新)

WordPressの管理画面ではデータを一覧表示しているページがいくつもある。今回この仕組みを自分のプラグインでも使ってみたいと思い、調査しながらプラグインに組み込んでみた。

投稿ページでユニークなテンプレートを選択しよう(2018年5月27日 更新)

4.7の変更点に「投稿タイプテンプレート」がある。これは従来固定ページ('page')向けに任意のテンプレートを適用できる機能が拡張されたもので、投稿ページ('post')はもちろんカスタム投稿タイプのページにも適用可能になっている。

常時SSL接続に変更しました(2018年5月27日 更新)

先週末、本サイトを常時SSL接続に変更しました。本サイトは「さくらのVPS」(CentOS 6系、Apache 2.2系)上にWordPressのマルチサイト機能を使って構築しており、無償で使用できる「Let's Encrypt」を使って常時SSL接続に切り替えた手順をメモとして残しそうと思います。

テキストエディタの文字を変更する(2018年5月27日 更新)

テキストエディタ(投稿ページの「テキスト」タブのエディタ)に標準では備わっていない機能を追加する自作プラグイン「html entities button」がほぼ1年ぶりにアップデート。ここではバージョン2.0.0で追加したテキストエディタのフォント切り替え機能について紹介する。