session_start();
换一下以下两句的位置就可以了:
session_register("var");$var = "test";echo "is :".$_SESSION["var"]; //没有东西???为什么??这样写的不对吗
echo "reg?".session_is_registered("var"); //显示1,显然已经注册了这个变
换一下以下两句的位置就可以了:
session_register("var");$var = "test";echo "is :".$_SESSION["var"]; //没有东西???为什么??这样写的不对吗
echo "reg?".session_is_registered("var"); //显示1,显然已经注册了这个变
session_start();
session_register('var');
if(session_is_registered('var'))echo $var;
else echo "no anything";
?>同意楼上的说法,
因为session_start()一定要放在程序的开头,
要保证在它之前不能有任何输出(包括空格)。
session_start();
$var = "test";
session_register('var');
if(session_is_registered('var')){
echo "is:".$_SESSION['var'];
} else {
echo "no anything!";
}?> Run result: is:
session的取值法我觉得应该用:
$_SESSION['VARNAME']; 还有其他的吗
2、从php4.3.1开始,已建议放弃老式的注册方式而改用新式的注册方式。尤其不要将两者混用。
3、$_SESSION数组的值是在session_start();产生的,所以不会受session_register()的影响。访问一个没有赋值的元素,自然不会有正确结果。所有session变量是在程序结束时才写入session临时文件或库中的。