(PHP 4, PHP 5, PHP 7, PHP 8)



session_module_name(?string $module = null): string|false

session_module_name()は、 現在のセッションモジュールの名前を返します。 これは session.save_handler としても知られています。



module が指定され、null でない場合、 そのモジュールを代わりに使用します。 このパラメーターに "user" を渡すことは禁止されています。 ユーザー定義のセッションハンドラを設定するには、この関数のかわりに session_set_save_handler() 関数 を呼び出さなければなりません。


現在のセッションモジュールの名前を返します。 失敗した場合に false を返します


バージョン 説明
8.0.0 module は、nullable になりました。
7.2.0 モジュール名に "user" を設定することは、 明示的に禁止されるようになりました。 これより前のバージョンでは、 "user" を設定しても静かに無視されていました。
add a note

User Contributed Notes 2 notes

raees at steelbrain dot com dot pk
9 years ago
This function is used to set the Session Module at site or script level.

The global configuration can be done in php.ini under the [Session] section and with the name of "session.save_handler". The sessions are saved in files by default, like so:
session.save_handler = files

But with this configuration you set one of your websites to use some other session module (if you have them installed and extension loaded with PHP), like so:

// NOTE: You must use this function before starting session with session_start(); to make it work properly
session_module_name('memcache'); // or pgsql or redis etc

// You'll need to define a save path also, if the module is other than files, like so:
session_save_path('localhost:11211'); // memcache uses port 11211

// or you can use multiple for load balancing:
session_save_path('localhost:11211:41,otherhost:11211:60') // First part is hostname or path to socket, next is port and the last is the weight for that server

//The function also returns the value of the current session module.
echo session_module_name(); // will print memcache in our case

// or maybe a check
if(session_module_name() != 'memcache'){
// Do something, throw an exception maybe
9 years ago
was looking for a rather comprehensive list of modules, and found but there are more.
To Top