Re: Finding current PHP sessions

From: Date: Sat, 14 May 2005 11:06:26 +0000
Subject: Re: Finding current PHP sessions
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-215217@lists.php.net to get a copy of this message
Ok, I went with the solution you recommended, by the way of a "thank you" to the list, here's the resulting function: /** * This function returns the IDs of the current PHP sessions. * At this time, it only works with * {@link http://www.php.net/manual/en/ref.session.php#AEN129461} * PHP session.save_handler='files' * * @author Bogdan Stancescu * @license http://opensource.org/licenses/lgpl-license.php GNU Lesser General Public License * * @return mixed false on error or the indexed array of the session IDs; * please note that the session IDs are 16-bit values represented as * 32-character long hexadecimal strings; letters are in lower caps. */ function getCurrentSessionIDs() { if (ini_get('session.save_handler')!='files') {
    // sorry, we only know how to handle files at this time!
    return(false);
} $sessions=array(); $session_path=session_save_path(); $d = dir($session_path); while (false !== ($entry = $d->read())) {
    if (
      ($entry=='.') ||
      ($entry=='..') ||
      (!is_file("$session_path/$entry"))
    ) {
      continue;
    }
    if (preg_match("/^sess_([0-9a-f]{32})$/",$entry,$matches)) {
      $sessions[]=$matches[1];
    }
} return($sessions); } Cheers, Bogdan

« previous php.general (#215217) next »