PHP はデフォルトでセッションをファイル形式で保存しますが、これはファイルスペースのオーバーヘッドが非常に小さい Windows でのみ使用できます。 uinx または liux でファイル システムを使用する場合、そのようなファイル システムのファイル スペースのオーバーヘッドは非常に大きくなりますが、セッションを常に使用する必要があるため、多数のユーザーが大量のセッション ファイルを作成することになります。サーバー全体にパフォーマンスの問題が発生します。
一方、サーバーがクラスター方式を採用している場合、セッションの一貫性が保てないため、このように、サーバーが何台同時に使用されても、データベースを使用してセッションを保存することができます。セッションが保存されている限り、データベース サーバーはセッションの整合性を保証できます。実装方法の詳細については、以下をお読みください。
PHP はデフォルトでセッションをファイル形式で保存します。PHP 設定ファイル PHP.ini に次の行があります。
session.save_handler="ファイル"これは、セッションがファイルに保存されることを意味します。データベースに保存したい場合は、それをユーザーモードに変更して
に変更する必要があります。
session.save_handler="使用"以上ですが、これはセッションの保存にファイルを使用しないことを意味するだけであり、データベースを選択してデータベース テーブルを作成する必要もあります。
データベースとデータベースのテーブル構造を確立するには、PHP が使用できる任意のデータベースを使用できます。PHP と mysql の組み合わせが最適であるため、例として mysql を使用します。もちろん、名前は変更できます。必要に応じて別のデータベースに移動します。
データベースを作成する
データベース「セッション」を作成します;
テーブル構造を作成する
テーブル 'session'( id char(32) not null , 'user 'char(30), data char(3000) ,主キー ('id') );
PHP セッションを保存し、PHP ファイルを書き込みます
リーリー
session_user_start.php として保存します。これで、セッションを使用する必要があるときに session_user_start.php を含める限り、このファイルの最初の行に
を含める必要があることに注意してください。メソッドをファイルセッションとして使用します。
上記は単なるチュートリアルです。実際のアプリケーションでは、より専門的にパッケージ化できます。SessionMysql.class.php
リーリーシステム ファイルのどこかでこのクラスをインスタンス化するだけです。
新しいSessionMysql();
興味があるかもしれない記事
ディレクトリ内のすべてのファイルを取得し、結果を配列に保存するphpプログラムhttp://www.bkjia.com/PHPjc/905118.html
。