検索
ホームページphp教程php手册MySQL を使用して PHP セッションを開始する

デフォルトでは、PHP セッションはファイルを通じて保存されます。これには次のような欠点があります。

セッション ファイルは通常小さいですが、ファイル システムにそのような小さいファイルを多数保存することはスペースの無駄であり、非効率的です。

分散サイトでは、セッション ファイルを使用してセッションを共有するのは困難です。

セッション ファイル方式では、オンライン ユーザーのセッション情報をカウントできません。

上記の問題を解決するには、データベースを使用してセッション情報を保存することが考えられます。

PHP 開発の場合、MySQL を使用してセッションを保存することは非常に良い選択です。 MySQL では、メモリに組み込まれたテーブル タイプのヒープが提供されています。セッションあたりのデータ量が少ない場合は、このタイプのテーブルを使用してパフォーマンスをさらに最適化することを検討できます。ただし、ヒープ タイプのテーブルにはテキスト タイプのフィールドがサポートされていないなど、多くの制限があるため、セッション データ レコードの長さを予測できない場合は、トランザクションを持たない MyISAM タイプのテーブルを選択する方が適切です。ディスクベースのテーブルの処理オーバーヘッドにより、最適なパフォーマンスが得られます。

セッション テーブルの構造は次のとおりです。

DROP TABLE IF EXISTS `sessions`;<br>CREATE TABLE `sessions` (<br> `session_id` varchar(32) NOT NULL default '',<br> `user_id` int(10) unsigned NOT NULL default '0',<br> `data_value` text NOT NULL,<br> `last_visit` timestamp(14) NOT NULL,<br> PRIMARY KEY (`session_id`),<br> KEY `user_id` (`user_id`)<br>) TYPE=MyISAM;

PHP はユーザー セッション モジュールをサポートしており、session_set_save_handler を通じてカスタム セッション処理関数を設定できます。デフォルトの処理モジュールはファイルであるため、session_set_save_handler でセッション処理関数を設定する前に、session_module_name('user') を使用してユーザー セッション モジュールを使用するように PHP に指示する必要があり、session_set_save_handler は session_start の前に実行する必要があります。



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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません