① Session数组中的键名可以是一个变量名吗例如:$email='[email protected]';
$_SESSION[$email]=$email;可是我试了好像不可以,有没有办法使 Session数组中的键名是一个变量名啊还有两个小问题,我想一起问:② PHP中没有日期型数据类型吗,是不是一般PHP程序中都把日期用字符串来保存呢。③ php字符串中不能含有算术表达式吗?例如:$n=6;
$ge="你是第". $n+1 ."个访问者";
$ge="你是第 $n+1 个访问者";
都不能输出7.难道一定要单独将算术表达式赋值给一个变量,再将变量放到字符串中去吗。④ 这个程序的结果为什么是0啊?1 || 0的执行结果不是1吗。
$str = "1 || 0;";
if(eval($str)){
echo 1;
}else{
echo 0;
}
$_SESSION[$email]=$email;可是我试了好像不可以,有没有办法使 Session数组中的键名是一个变量名啊还有两个小问题,我想一起问:② PHP中没有日期型数据类型吗,是不是一般PHP程序中都把日期用字符串来保存呢。③ php字符串中不能含有算术表达式吗?例如:$n=6;
$ge="你是第". $n+1 ."个访问者";
$ge="你是第 $n+1 个访问者";
都不能输出7.难道一定要单独将算术表达式赋值给一个变量,再将变量放到字符串中去吗。④ 这个程序的结果为什么是0啊?1 || 0的执行结果不是1吗。
$str = "1 || 0;";
if(eval($str)){
echo 1;
}else{
echo 0;
}
② 是的
③ 可以含有,只不过要改一下
$ge="你是第". ($n+1) ."个访问者";
$ge="你是第 $n+1 个访问者"; // eval 一下
④ 仔细去阅读以下eval函数的介绍,引自手册:如果没有在代码字符串中调用 return 语句,则返回 NULL。如果代码中存在解析错误,则 eval() 函数返回 false。
当然可以,例如:$email='[email protected]';
$_SESSION[$email]=$email;Array
(
[[email protected]] => [email protected]
)
只不过你不知道键名是什么,读取时有点麻烦② PHP中没有日期型数据类型吗,是不是一般PHP程序中都把日期用字符串来保存呢。
是这样的③ php字符串中不能含有算术表达式吗?
不是的,只不过你可能不会得到期望的结果。要学会使用括号
例如:$n=6;
$ge = "你是第". ($n+1) ."个访问者";
就可得到:你是第7个访问者④ 这个程序的结果为什么是0啊?1 || 0的执行结果不是1吗。
既然你需要使用函数的返回值,那么函数体就应该有显式的返回
$str = "1 || 0;";
if(eval("return $str")){
echo 1;
}else{
echo 0;
}
②php日期都是用时间戳的,然后用date()方法格式化就可以得到一个日期
③这个可以的,你只要优级改一下就行了,例如:$ge="你是第". ($n+1) ."个访问者";
④var_dump( eval($str));你这个看一下就知道,因为它他一个null值,然后转成布尔型就是false,得到的结果就是0了