概述
菲尔建议我使用课程进行会话.如果手动调用session_start(),则会将代码绑定到PHP会话实现.我对session_start的调用受到我的会话类的保护,具有以下内容:
if (!isset($_SESSION))
{
// If we are run from the command line interface then we do not care
// about headers sent using the session_start.
if (PHP_SAPI === 'cli')
{
$_SESSION = array();
}
elseif (!headers_sent())
{
if (!session_start())
{
throw new Exception(__METHOD__ . 'session_start failed.');
}
}
else
{
throw new Exception(
__METHOD__ . 'Session started after headers sent.');
}
}
编辑:
上面的代码将进入你的会话类(可能由它的构造函数以某种方式调用).命令行PHP创建一个数组而不是调用session_start(它在命令行上不起作用).
在测试依赖于会话变量的代码时,我在我的测试中模拟了会话变量:
$_SESSION = array('key1' => 'value you want', 'key2' => 'etc.');
这允许您测试将在页面上收到的所有可能的会话设置.
在我看来,测试会话值的创建属于创建它们的代码,因此嘲笑它们的存在对我来说似乎没问题.这样,您可以单独测试每个单元,而不是将它们组合在一起并在测试之间保持会话值.
最后
以上就是无限墨镜为你收集整理的在php中测试变量的函数是,如何在PHP中单元测试会话变量?的全部内容,希望文章能够帮你解决在php中测试变量的函数是,如何在PHP中单元测试会话变量?所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复