[PHP-users 35503] Re: session_cache_expire 戻り値

pigg.y.in.side @ gmail.com pigg.y.in.side @ gmail.com
2011年 2月 22日 (火) 17:53:05 JST


Nomuraさん

はじめましてミッキーと申します。

手元にあったPHP5.2.5のソースコードを確認したところ session_cache_expire() の動作は、
引数の有無にかかわらず「呼び出し時点での session.cache_expire 値を戻す」でした。

よって、Nomuraさんが記載されているコードと実行結果は仕様かと思われます。

2011年2月22日16:29 Tomoo Nomura <nomurat @ tmo.co.jp>:
> こんにちは。
>
> sesshon_cache_expire() の戻り値がよくわからないのですが。。。
>
>   $SESSION_EXPIRE = 1800 ;
>   session_cache_limiter('private_no_expire') ;
>   $t2 = session_cache_expire($SESSION_EXPIRE) ;
>   $t3 = session_cache_expire() ;
>   session_start() ;
>
>   $fp = fopen( "/tmp/session", "w" ) ;
>   fputs( $fp, "t2=$t2 t3=$t3 \n" ) ;
>   fclose( $fp ) ;
>
> 結果は、
> t2=180 t3=1800
> となります。
>
> 次のように変更すると、
>
>   $SESSION_EXPIRE = 1800 ;
>   session_cache_limiter('private_no_expire') ;
>   $t2 = session_cache_expire() ;
>   $t3 = session_cache_expire($SESSION_EXPIRE) ;
>   session_start() ;
>
>   $fp = fopen( "/tmp/session", "w" ) ;
>   fputs( $fp, "t2=$t2 t3=$t3 \n" ) ;
>   fclose( $fp ) ;
>
> 結果は、
> t2=180 t3=180
> となります。
>
> デフォルトの180以外にするには、session_cache_expireを2度コールしないと
> いけないのでしょうか? (そんなはずないですよね)
>
> OS Debian Linux Squeeze apache2.2.16  php5.3.3
> Browser  Iceweasel3.5.16(Firefox3.5.16)
>
> よろしくお願いいたします。
>
> --
> ****** Nomura Technical Management Office Ltd. *****************
>  Tomoo Nomura      nomura @ tmo.co.jp       http://www.tmo.co.jp/
>    Phone: +81-78-797-0240 Fax: +81-50-3743-1336
>  Worldwide Airline Timetable 'Flight Planner'
>  European Electronic Timetable 'HAFAS'         ValueFax Support
> ****************************************************************
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3
>


PHP-users メーリングリストの案内