3

PHPを使用してデータベースに非常に長い文字列を保存したい。文字列のサイズは 43kb です。しかし、この文字列を php 変数に渡すと、サポートされません。1 つの文字列で 16379 文字をサポートしています。さらに 1 文字追加すると、Dreamweaver はその行に構文エラーを示します。50,000 文字の長い文字列を php 変数に格納する方法。

4

2 に答える 2

8

それを処理するのに十分なメモリがある限り、PHP 文字列変数に何でも格納できます。

43kb は 16379 文字ほどではありません。

Dreamweaver (うまくやろうと思います) は、独自のメモリ制限を設定するか、そのような変数の処理には使用されません。

PHPスクリプトを実行しようとしませんでしたか?

ところで、変数に格納するデータが非常に大きい場合は、PHP スクリプトからファイルに移動することを強くお勧めします。

デフォルトでは、PHP はmemory_limit128MB ですが、これを増やします。

于 2012-06-21T10:51:46.483 に答える
2

PHP文字列には実際の制限はありません。

あなたの質問の可能な重複はここにあります:PHPの文字列の最大長はどれくらいですか?

ご参考までに、ビル・カーウィンの回答をここに貼り付けます。

ただし、PHPスクリプトには、特定のスクリプト実行ですべての変数に割り当てることができる合計メモリに制限があるため、これにより、単一の文字列変数の長さにも事実上制限が課せられます。

この制限はmemory_limit、php.ini構成ファイルのディレクティブです。メモリ制限のデフォルトは、PHP 5.2では128MB、以前のリリースでは8MBです。

php.iniファイルでメモリ制限を指定しない場合、PHPバイナリにコンパイルされるデフォルトが使用されます。理論的には、ソースを変更してPHPを再構築し、このデフォルト値を変更できます。

-1php.iniファイルでメモリ制限として指定すると、チェックが停止し、オペレーティングシステムが割り当てるメモリと同じ量のメモリをスクリプトが使用できるようになります。これはまだ実際的な制限ですが、システムリソースとアーキテクチャに依存します。

于 2012-06-21T10:52:26.557 に答える