5

ETA: いくつか提案されini_set()ましたが、これはサーバー側の設定であると理解しています。実行時にスクリプトごとの独立性が必要です。たとえば、次のように 3 つのスクリプトを同時に実行するとします。x.php は 2k、y.php は 4k、z.php は 8k を使用します。

スクリプトごとに(つまり、サーバー全体ではなく) POST の最大サイズにプログラムで制限を設定するにはどうすればよいですか?

たとえば Perl では、各スクリプトでこれを行うだけで、それぞれが実行時に独自の制限を設定できるようになります。

# The $POST_MAX variable also applies to the combined size of all the elements
# in a form. Therefore, you can set this variable to keep people from pasting
# huge amounts of junk into text fields, too.
$CGI::POST_MAX = 1024 * 2;

すべてのPHP スクリプトの最大 POST サイズを制限する設定が php.ini にあることに気付きました。

; Maximum size of POST data that PHP will accept.
; http://php.net/post-max-size
post_max_size = 8M

しかし、スクリプトごとにこれを行う方法を知りたいです (各スクリプトには独自の制限があるため)。

注: おそらく、Apache httpd.conf および/または .htaccess で制限を設定できますが、私はこれを行いたくありません。

4

3 に答える 3

9

を使用ini_setして、必要に応じてphp設定を設定します。

ini_set('upload_max_filesize', '60M');     
ini_set('max_execution_time', '999');
ini_set('memory_limit', '128M');
ini_set('post_max_size', '60M'); 
于 2013-02-28T04:28:17.993 に答える
1

スクリプトごとに ini 設定を変更するには、次を使用できます。

ini_set('post_max_size', '10M')
于 2013-02-28T04:34:42.557 に答える
0

また、あなたの.htaccessファイルでそれを行うことができます

php_value upload_max_filesize 30M

ini_setまたは、ホストプロバイダーによってほとんど無効にされているphp関数を使用できます。

ini_set('upload_max_filesize', '60M');     
于 2013-02-28T05:18:55.520 に答える