doupang9080 2012-12-24 13:45
浏览 39
已采纳

PHP session_sava_path()到MySQL表

I've been looking into making my own session handler for my PHP application, simply because I want to store the session data in a MySQL Memory table instead of on the local filesystem.

There are 4 main reasons for me to do this.

  1. The MySQL server is local, so reading from memory will be faster.
  2. Being able to list active users
  3. Making an easy way for an admin to read and modify a user session, without having them logging ind and out.
  4. Being able to run scripts after a session timeout, or a user "idle" variable in the session.

I can't seem to find any easy way for doing this.

I could use memcached, but it would result in doubling the session data in the memory on my server.

Does anybody know of an easy way, to force PHP at run-time, to use a MySQLi resource as session storage?

  • 写回答

1条回答 默认 最新

  • doushi6932 2012-12-24 13:52
    关注

    Actually Mysql offers a memcache interface that first uses memory and can later on persitent into a real database table.

    It can be simply configured via php.ini after you've create the tabels in your database server (see here):

    ; when using the "memcache" extension:
    session.save_handler=memcache
    ; when using the "memcached" extension:
    ; session.save_handler=memcached
    
    session.save_path="tcp://localhost:11211"
    

    You find it outlined here with PHP examples:

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题