Bug #68015 [Com]: Session is not filled in cli script

From: Date: Tue, 03 Feb 2015 21:17:44 +0000
Subject: Bug #68015 [Com]: Session is not filled in cli script
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-190455@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=68015&edit=1

 ID:                 68015
 Comment by:         rmoisto at gmail dot com
 Reported by:        rmoisto at gmail dot com
 Summary:            Session is not filled in cli script
 Status:             Feedback
 Type:               Bug
 Package:            Session related
 Operating System:   Ubuntu 12 x64
 PHP Version:        5.5.16
 Assigned To:        yohgaki
 Block user comment: N
 Private report:     N

 New Comment:

The problem is still present.

Output of "php -v":
PHP 5.5.18-1+deb.sury.org~precise+1 (cli) (built: Oct 17 2014 15:11:34)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies


I've updated my test script:
<?php
session_id($argv[1]);
session_start();
echo file_get_contents('/var/lib/php5/sessions/sess_' . $argv[1]) . PHP_EOL;
var_dump($_SESSION);
var_dump(session_id());
var_dump(session_save_path());

Which outputs:
(actual data in the session file, too much of it to paste here)
array(0) {
}
string(26) "l8lrlpo9t36guik6m8h04lnaa6"
string(22) "/var/lib/php5/sessions"


The assumption that a CLI script is filling the session is false.
It is filled by fpm that is used by the web server (nginx).


Previous Comments:
------------------------------------------------------------------------
[2015-02-03 03:43:34] yohgaki@php.net

It seems working now. Do you still have this issue?

[yohgaki@dev PHP-5.5]$ cat t1.php
<?php
session_id($argv[1]);
session_start();
var_dump($_SESSION);
$_SESSION['test']=time();
[yohgaki@dev PHP-5.5]$ ./php-bin -d session.use_strice_mode=0 t1.php 21345
array(1) {
  ["test"]=>
  int(1422934949)
}
[yohgaki@dev PHP-5.5]$ ./php-bin -d session.use_strice_mode=0 t1.php 21345
array(1) {
  ["test"]=>
  int(1422934964)
}

------------------------------------------------------------------------
[2014-09-12 20:44:07] rmoisto at gmail dot com

Description:
------------
I have a tiny cli script that accepts a session id as a command line argument. It's job is to
fetch that session and print it out.

Since upgrading to PHP 5.5.16 the $_SESSION variable is always empty. It did work before.

Test script:
---------------
<?php
session_id($argv[1]);
session_start();
var_dump($_SESSION);

Expected result:
----------------
$_SESSION is an array filled with session information.

Actual result:
--------------
$_SESSION is an empty array.


------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=68015&edit=1


Thread (11 messages)

« previous php.bugs (#190455) next »