WebDesign Dackel

PHP、is_writable()で書き込み権限をチェック!

PHP、is_writable()で書き込み権限をチェック!

Hatena0
Google+0
Pocket0
Feedly0

PHPで自前のログを残したり、テキストファイルの書き込みを行ったりすることがあるかと思います。
書き込みをする時にパーミッションの設定で書き込み権限がないとエラーが出てしまいますね。
書き込み処理を行う前に、まず書き込みが可能かどうかの確認がしたい!と思っていてやり方を調べていたら、そのまんまの関数が用意されていました。PHPを使う方からしたら常識的なことかもしれませんが、全く知らない関数だったのでメモ。

is_writable($filename)

filenameが存在して、かつそれが書き込み可能であれば TRUEを返します。引数filenameはディレクトリ名とすることができ、 ディレクトリが書き込み可能であることを調べることが可能です。
PHP は、Web サーバーが実行されているユーザー ID(‘nobody’ が多い) でファイルにアクセスすることを覚えておいてください。 セーフモードの制限は働きません。

これで、書き込み失敗のエラーを回避することができますね!