2014年1月17日金曜日

PHPでファイルポインターからファイル名を取得する方法

ちょっと調べたらStackOverflowで見つけた方法
日本語のページが少なかったので書いてみる。

関数内で、ファイルポインターだけ渡されたのにファイル名が知りたい場合が出てきました。

$fp = fopen( $filename, 'r' );
function get( $fp )
{
   $filename = ... // ここでファイル名が知りたい。
}

引数にファイル名を追加すればいいのですが、面倒だったのでちょっと調べたら、すぐに答えが見つかりました。stream_get_meta_dataという関数。さすがPHPです。関数ほぼ一発で取得できました。

$info = stream_get_meta_data($fp);
$filename = $info["uri"];

だそうです。

0 件のコメント: