ホームページ >バックエンド開発 >PHPチュートリアル >PHP で `upload_max_filesize` を `ini_set()` でオーバーライドできないのはなぜですか?
PHP: 'upload_max_filesize' 構成のオーバーライド
PHP 5.3.0 で 'ini_set() を使用して 'upload_max_filesize' を設定すると問題が発生します。 '。これは、PHP 構成設定とその範囲の誤解が原因である可能性があります。
省略表記の制限
'php.ini' ファイルの外では、構成値を指定するための省略表記 (「10M」)。この表記は「php.ini」内でのみ有効です。あなたの場合、「ini_set('upload_max_filesize', '10M')」は「10M」をメガバイト単位の「10」として解釈し、デフォルトの 2MB 制限になります。
'upload_max_filesize' 設定
さらに、「upload_max_filesize」 PHP 構成設定リストでは「PHP_INI_PERDIR」としてマークされています。これは、「ini_set()」を使用してオーバーライドできないことを意味します。 「php.ini」ファイルに直接設定するか、.htaccess ファイルを変更して特定のディレクトリの設定をオーバーライドする必要があります。
Apache サーバーの再起動
変更後「php.ini」ファイルを変更した場合、変更を有効にするには Apache サーバーを再起動する必要があります。これは、PHP 構成設定がサーバー起動時に Apache 構成にコンパイルされるため必要です。
結論
「upload_max_filesize」を正しく変更するには、次の手順に従います。
以上がPHP で `upload_max_filesize` を `ini_set()` でオーバーライドできないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。