記事一覧

PHPで、2MB以上のファイルをアップロード

「PHPは2MB以上のファイルをアップロードできないのでイヤ」と言われる事が何度かあったのですが、説明するたびに検索するのも面倒なので、自分用にコードとURLをメモしておきます。

これはPHPの不具合…ではなくて、PHPの初期設定で最大サイズが2MBに設定されているだけです。なので、適当な値に変更すればOKです。(レンタルサーバーによっては、変更させてくれないかもしれないけど。)

具体的には、プログラムと同じディレクトリ内(もしくは上位階層のディレクトリ内)に.htaccessファイルを作成し、以下の内容を記述します。

php_value max_execution_time 60
php_value memory_limit 5M
php_value post_max_size 5M
php_value upload_max_filesize 5M

この場合、プログラムのタイムアウト秒数を60秒に設定し、扱えるデータの最大容量を5MBに設定しています。もちろん、もっと大きな値を設定することもできるけど、「使わないかもしれないけど、一応大きな値を設定しておく」というのは止めたほうがいいと思います。
各値の意味は、以下のページの解説が詳しいです。

トラックバック一覧

コメント一覧