Exemplo n.º 1
0
 /**
  * setParams - set both the class specified
  *
  * @param  array $userOptions - pass-by-keyword style array of <option name, option value> pairs
  * @throws JO_Session
  * @return void
  */
 public static function setParams(array $userOptions = array())
 {
     // set default options on first run only (before applying user settings)
     if (!self::$_defaultOptionsSet) {
         foreach (self::$_defaultOptions as $defaultOptionName => $defaultOptionValue) {
             if (isset(self::$_defaultOptions[$defaultOptionName])) {
                 ini_set("session.{$defaultOptionName}", $defaultOptionValue);
             }
         }
         self::$_defaultOptionsSet = true;
     }
     // set the options the user has requested to set
     foreach ($userOptions as $userOptionName => $userOptionValue) {
         $userOptionName = strtolower($userOptionName);
         // set the ini based values
         if (array_key_exists($userOptionName, self::$_defaultOptions)) {
             ini_set("session.{$userOptionName}", $userOptionValue);
         } else {
             /** @see JO_Exception */
             require_once 'JO/Exception.php';
             throw new JO_Exception("Unknown option: {$userOptionName} = {$userOptionValue}");
         }
     }
 }