Ausprobiert ...
bearbeitet von Tagwächterwenn Du **auch in der Konsole** die gleiche Session wieder haben willst:
~~~php
<?php
ob_start();
session_start();
$_SESSION['farbe'] = 'grün';
$_SESSION['tier'] = 'Spinne';
$_SESSION['zeit'] = time();
$mySession=$_SESSION;
$sessId=session_id();
#session_destroy();
session_write_close();
$mySession['ha'] = 'foo';
echo 'Kopie nach write_close:', "\n";
print_r($mySession);
session_start($sessId);
echo '$_SESSION nach Reopen:', "\n";
print_r($_SESSION);
echo 'Kopie nah Reopen:', "\n";
print_r($mySession);
~~~
Ergebnis:
~~~
php /tmp/test3.php
Kopie nach write_close:
Array
(
[farbe] => grün
[tier] => Spinne
[zeit] => 1477657342
[ha] => foo
)
$_SESSION nach Reopen:
Array
(
[farbe] => grün
[tier] => Spinne
[zeit] => 1477657342
)
Kopie nah Reopen:
Array
(
[farbe] => grün
[tier] => Spinne
[zeit] => 1477657342
[ha] => foo
)
~~~
[Im Browser ist das nicht nötig, weil dann die Session-Id auch für das Reopen automatisch geliefert wird](https://home.fastix.org/Tests/session_reopen_ohne_sessid.php).
Ausprobiert ...
bearbeitet von Tagwächterwenn Du **auch in der Konsole** die gleiche Session wieder haben willst:
~~~php
<?php
ob_start();
session_start();
$_SESSION['farbe'] = 'grün';
$_SESSION['tier'] = 'Spinne';
$_SESSION['zeit'] = time();
$mySession=$_SESSION;
$sessId=session_id();
#session_destroy();
session_write_close();
$mySession['ha'] = 'foo';
echo 'Kopie nach write_close:', "\n";
print_r($mySession);
session_start($sessId);
echo '$_SESSION nach Reopen:', "\n";
print_r($_SESSION);
echo 'Kopie nah Reopen:', "\n";
print_r($mySession);
~~~
Ergebnis:
~~~
php /tmp/test3.php
Kopie nach write_close:
Array
(
[farbe] => grün
[tier] => Spinne
[zeit] => 1477657342
[ha] => foo
)
$_SESSION nach Reopen:
Array
(
[farbe] => grün
[tier] => Spinne
[zeit] => 1477657342
)
Kopie nah Reopen:
Array
(
[farbe] => grün
[tier] => Spinne
[zeit] => 1477657342
[ha] => foo
)
~~~