0

$var==1 是测试 $var 是否有值的正确语法吗?

我问,因为我在一个简单的条件下失败了。

这是似乎失败的代码:

if ($slcustom31==1) {$page="http://www.mydomain.com/members/page_Alpha.php";}

我认为语法有问题, $var==1 。

++++++++ 这是整个条件,如果这使事情更清楚:

//condition 1
if ($slcustom31==1) {$page="http://www.mydomain.com/members/page_Alpha.php";} 

//condition2
elseif ($slcustom31!=1 AND $slcustom29!="") {$page="http://www.mydomain.com/members/".$slcustom29;}

//condition3
else {$page="http://www.mydomain.com/members/page_Beta.php";} 

sl_redirecttourl($page);

具体症状:脚本忽略条件 1 和条件 2,默认为条件 3。

++++ 如果有帮助,这里是整个(短)脚本:

$groupswithaccess="somegroup";

require_once("../slpw/sitelokpw.php");
require_once("../slpw/sitelokapi.php"); //gets value being tested by conditional

if ($slcustom31==1) {$page="http://www.mydomain.com/members/page_Alpha.php";} 
elseif ($slcustom31!=1 AND $slcustom29!="") {$page="http://www.mydomain.com/members/".$slcustom29;}//not finished, but started
else {$page="http://www.mydomain.com/members/page_Beta.php";} 

sl_redirecttourl($page);

有人能告诉我我应该做些什么不同吗?

谢谢!

4

3 回答 3

2
if($var ==1){
//returns true only if var is 1
}

if(isset($var)){
//returns true if you currently have any value stored as the variable $var
}
于 2013-01-11T02:08:23.490 回答
1

要检查变量是否具有值,请使用:

empty($var);

如果它是“空的”,它将返回 TRUE,否则将返回 FALSE。这被认为是空的:

  • ""(一个空字符串)
  • 0(0 为整数)
  • 0.0(0 作为浮点数)
  • "0" (0 作为字符串)
  • 空值
  • 错误的
  • array() (一个空数组)
  • $var; (声明的变量,但没有值)

更多信息请参见: http: //php.net/manual/en/function.empty.php

于 2013-01-11T02:11:00.413 回答
1

不,您想查看issetempty

于 2013-01-11T02:11:27.687 回答