控制台命令上的PHP会话丢失
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了控制台命令上的PHP会话丢失相关的知识,希望对你有一定的参考价值。
我知道会话没有在控制台命令上工作,我有一个有3个步骤或页面的应用程序:
Step1页面:我已经开始会话并且会话ID为“XYZ”。
Step2页面:我在后台或控制台中运行了一些脚本或php代码并将输出发送到浏览器,并在此步骤2尝试获取会话ID,但它没有任何价值。我正在重定向到第3步
Step3页面:当我尝试获取会话ID的值时,我可以获得会话ID“XYZ”。
现在请告诉我如何在步骤2中获取会话ID值。
或者有任何其他方式可以保存任何唯一值,我将为每个客户端计算机(用户)工作,如会话。我尝试缓存但不会为每个用户或客户端。
谢谢。
答案
console(cli)脚本无法访问会话变量,因为没有http头来发送会话ID。
我不知道你的运行背景php究竟是如何,但你可以像这样解析变量
exec("php sctipt.php $_SESSION['v1'] $_SESSION['v2']")
在脚本中,变量位于$argv
数组中
ref:https://secure.php.net/manual/en/reserved.variables.argv.php
以上是关于控制台命令上的PHP会话丢失的主要内容,如果未能解决你的问题,请参考以下文章