web-dev-qa-db-ja.com

PHP:ポストグローバル変数の全長はどれくらいですか?

ポストグローバルの全長を知っている人はいないかと思いました。例えば:

$_POST['formInput'] = "hello world, how long can i be?";

誰かが不明な量の文字をテキスト領域に入力するサイトを作成しているので、Word文書の2ページになる可能性があります。それで、誰かがポストグローバルを使用する以外にこれを行う方法の他の方法を知っているなら? (他の人に見つけてほしくない重要なデータなので、ファイルに保存することはできません)それは非常に役立ちます。

ありがとう

21
phpNutt

Php.iniでpost_max_sizeを確認してください。これは通常、デフォルトで約8 MBですが、共有ホスティングを使用している場合は、間違いなく異なる可能性があります。

; POST PHPが受け入れるデータ。
 post_max_size = 8M

サーバーに大量のデータを送信する場合は、$_POSTを使用する必要があります。さらに詳しく調べるには、ドキュメントの POSTメソッドのアップロード を確認することをお勧めします。

24
Sampson

$_POSTは、HTTPリクエストの本文から入力されます。 HTTPリクエストのサイズに制限がないため、プロトコル層に制限はありません。ただし、PHPは、読み取る入力の量にいくつかの制限があります。これは、ini-setting post_max_size で制御できます。

7
troelskn

もう1つの問題は、post_max_sizeだけでなく、ディレクティブmax_input_varsのphp.iniのデフォルト制限(デフォルトは1000)である可能性があります。あなたが持っている場合例えば数千のチェックボックスがある非常に大きなフォームでは、$ _ POST配列には1000個のキーしかありません。

4
Petr Novotny

ブラウザからサーバーに大量のデータを送信する場合は、HTTP POSTメソッドを使用する必要があります。これは、データがPHPで受信されることを意味します。側、$_POSTスーパーグローバル配列;それについてできることはあまりありません。

構成ディレクティブ post_max_size は、POSTメソッドを使用して受信できるデータの最大量を定義します-デフォルトよりも高い値に設定する必要がある場合があります1つは、ニーズに応じて。

また、post_max_sizeのドキュメントに記載されているように、 memory_limit に設定された値も重要です。

1
Pascal MARTIN