Menyetel penangan penyimpanan sesi gagal:
session_set_save_handler("sess_open", "sess_close", "sess_read", "sess_write", "sess_destroy", "sess_gc")
Karena panggilan balik yang ingin Anda daftarkan ini tidak ada:
var_dump(is_callable("sess_open")); # FALSE
Itu karena metode objek Anda perlu didaftarkan dengan benar sebagai panggilan balik. Callback metode objek ditulis dalam bentuk array dengan dua elemen, yang pertama adalah objek, yang kedua adalah string dari nama metode. Contoh dari PHP net yang mirip dengan milik Anda:
$handler = new FileSessionHandler();
session_set_save_handler(
array($handler, 'open'),
array($handler, 'close'),
array($handler, 'read'),
array($handler, 'write'),
array($handler, 'destroy'),
array($handler, 'gc')
);
Seperti yang Anda lihat, setiap metode ditulis sebagai larik tunggal dengan elemen pertama $handler
selalu.
Dari dalam kelas Anda dapat menggunakan $this
untuk merujuk pada objek yang sama. Namun sebelum Anda sepenuhnya menulis milik Anda sendiri, periksa session_set_save_handler()
Halaman manual PHP
untuk info, contoh, dan catatan kontribusi pengguna. Ada berbagai cara bagaimana Anda dapat mengaturnya untuk kasus Anda.