嗨我的项目中有很多会话值,我使用会话的syntext是
$_SESSION['username'] = $somevalue;
这个东西是在大约2000页的可能页面中实现的。现在我想把这个东西换成
$_SESSION['username'] = (string)$somevalue
同时在所有页面中。我怎么能在梦中做到这一点。请帮我。我的页面中使用了许多不同的会话值。
有没有办法将所有会话值同时转换为字符串。 我的意思是像$ _SESSION [。] =(字符串)这样的正则表达式方法。或任何其他方法。请告诉我。
感谢。
答案 0 :(得分:1)
array_map
函数可能就是你要找的东西:
$_SESSION = array_map(function($item) { return (string)$item; }, $_SESSION);
匿名函数需要PHP 5.3,在早期版本中,您必须将函数名称作为第一个参数传递。
答案 1 :(得分:1)
这取决于您拥有的PHP版本。对于> = 5.3,使用Peter的版本,对于< 5.3,使用
function stringify($item)
{
return (string)$item;
}
$_SESSION = array_map('stringify', $_SESSION);
答案 2 :(得分:0)
以防万一你需要在你的2000代码文件中 而不是在脚本中转换运行时的值:不知道Dreamweaver是否支持正则表达式搜索和替换以及反向引用字符是什么。但请尝试替换此
\$_SESSION\['[^']+'\]\s*=\s*
用这个:
$0(string)
$0
是匹配模式的反向引用。如果这不起作用,请尝试\0
或\\0
。