ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp はデフォルトの制限を削除します

thinkphp はデフォルトの制限を削除します

王林
王林オリジナル
2023-05-26 12:38:07644ブラウズ

thinkphp フレームワークを使用してプロジェクトを開発する場合、デフォルトでフレームワークによって、アップロードされるファイルのサイズ、フォーム送信データのサイズ、SQL クエリ結果の数が制限されることがわかります。これは、次のことを行う必要がある人にとって便利です。大きなファイルをアップロードしたり、大きなデータをクエリしたりすると、大規模なプロジェクトでは多くの問題が発生します。したがって、これらのデフォルトの制限を変更して削除する必要があります。

  1. アップロード ファイル サイズ制限の削除

thinkphp フレームワークでは、アップロード ファイル サイズ制限は php.ini の Upload_max_filesize と post_max_size によって実装されているため、これらを変更する必要があります。 php.ini ファイル内の 2 つの構成項目。

まず、コマンド ラインに php --ini と入力して、php.ini ファイルへのパスを表示します。ファイルを見つけて開き、次のように変更します。

upload_max_filesize = 100M
post_max_size = 100M

100M は、プロジェクトのニーズに応じて調整できます。変更が完了したら、Apache または Nginx サーバーを保存して再起動します。

  1. フォーム送信データ サイズ制限の削除

thinkphp フレームワークでは、フォーム送信データ サイズ制限は php.ini の post_max_size とmemory_limit によって実装されており、同様に変更が必要です。 。 php.ini ファイルでこれら 2 つの構成項目を見つけて、次の変更を加えます。

post_max_size = 100M
memory_limit = 128M

100M はプロジェクトのニーズに応じて調整できます。変更が完了したら、Apache または Nginx サーバーを保存して再起動します。

  1. SQL クエリ結果の数の制限を削除

thinkphp フレームワークでは、SQL クエリ結果の数の制限はフレームワーク自体によって設定されているため、変更するにはフレームワークのコードを変更する必要があります。

thinkphp フレームワークのコア コード ファイル ThinkPHPDbDriverPdo.php には、次のコードがあります:

if (isset($options['limit'])) {

$limit = is_numeric($options['limit']) ? $options['limit'] : 100000;
$this->_queryStr .= ' LIMIT ' . $limit;

}

100000 は、クエリ結果の数のデフォルト制限です。これをより大きな値に変更することも、項目数に制限がないことを示す 0 に変更することもできます。変更が完了したら、プロジェクトを保存して再実行します。

概要

php.ini 構成ファイルと thinkphp フレームワーク コードを変更することで、デフォルトの制限を削除し、大きなファイルをアップロードしたり、大量のデータをクエリしたりするプロジェクトの問題を解決できます。構成ファイルを変更する場合は、特定のニーズに応じて調整する必要があり、サーバーに過剰な負荷を引き起こすような大きな値を設定しないように注意してください。

以上がthinkphp はデフォルトの制限を削除しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。