@@ -92,27 +92,59 @@ public function configFromSystem(): Config
9292 $ config = new Config ();
9393
9494 $ config ->setSerializeHandler (
95- Serializers \Factory::auto (ini_get ('session.serialize_handler ' ))
95+ Serializers \Factory::auto (ini_get ('session.serialize_handler ' ) ?: null )
9696 );
9797
98- $ config ->setName (ini_get ('session.name ' ));
98+ if (ini_get ('session.name ' ) !== false ) {
99+ $ config ->setName (ini_get ('session.name ' ));
100+ }
101+
102+ if (ini_get ('session.cookie_lifetime ' ) !== false ) {
103+ $ config ->setCookieLifetime ((int ) ini_get ('session.cookie_lifetime ' ));
104+ }
105+
106+ if (ini_get ('session.cookie_path ' ) !== false ) {
107+ $ config ->setCookiePath (ini_get ('session.cookie_path ' ));
108+ }
109+
110+ if (ini_get ('session.cookie_domain ' ) !== false ) {
111+ $ config ->setCookieDomain (ini_get ('session.cookie_domain ' ));
112+ }
99113
100- $ config ->setCookieLifetime ((int ) ini_get ('session.cookie_lifetime ' ));
101- $ config ->setCookiePath (ini_get ('session.cookie_path ' ));
102- $ config ->setCookieDomain (ini_get ('session.cookie_domain ' ));
103114 $ config ->setCookieSecure ((bool ) ini_get ('session.cookie_secure ' ));
104115 $ config ->setCookieHttpOnly ((bool ) ini_get ('session.cookie_httponly ' ));
105- $ config ->setCookieSameSite (ini_get ('session.cookie_samesite ' ));
106116
107- $ config ->setCacheLimiter (ini_get ('session.cache_limiter ' ));
108- $ config ->setCacheExpire ((int ) ini_get ('session.cache_expire ' ));
117+ if (ini_get ('session.cookie_samesite ' ) !== false ) {
118+ $ config ->setCookieSameSite (ini_get ('session.cookie_samesite ' ));
119+ }
120+
121+ if (ini_get ('session.cache_limiter ' ) !== false ) {
122+ $ config ->setCacheLimiter (ini_get ('session.cache_limiter ' ));
123+ }
124+
125+ if (ini_get ('session.cache_expire ' ) !== false ) {
126+ $ config ->setCacheExpire ((int ) ini_get ('session.cache_expire ' ));
127+ }
128+
129+ if (ini_get ('session.gc_probability ' ) !== false ) {
130+ $ config ->setGcProbability ((int ) ini_get ('session.gc_probability ' ));
131+ }
132+
133+ if (ini_get ('session.gc_divisor ' ) !== false ) {
134+ $ config ->setGcDivisor ((int ) ini_get ('session.gc_divisor ' ));
135+ }
109136
110- $ config -> setGcProbability (( int ) ini_get ('session.gc_probability ' ));
111- $ config ->setGcDivisor ((int ) ini_get ('session.gc_divisor ' ));
112- $ config -> setGcMaxLifetime (( int ) ini_get ( ' session.gc_maxlifetime ' ));
137+ if ( ini_get ('session.gc_maxlifetime ' ) !== false ) {
138+ $ config ->setGcMaxLifetime ((int ) ini_get ('session.gc_maxlifetime ' ));
139+ }
113140
114- $ config ->setSidLength ((int ) ini_get ('session.sid_length ' ));
115- $ config ->setSidBitsPerCharacter ((int ) ini_get ('session.sid_bits_per_character ' ));
141+ if (ini_get ('session.sid_length ' ) !== false ) {
142+ $ config ->setSidLength ((int ) ini_get ('session.sid_length ' ));
143+ }
144+
145+ if (ini_get ('session.sid_bits_per_character ' ) !== false ) {
146+ $ config ->setSidBitsPerCharacter ((int ) ini_get ('session.sid_bits_per_character ' ));
147+ }
116148
117149 $ config ->setLazyWrite ((bool ) ini_get ('session.lazy_write ' ));
118150
0 commit comments