Проверка условных ошибок PHP на значение

Является ли $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);

Может кто-нибудь сказать мне, что я должен делать по-другому?

Спасибо!

3 ответа

Решение
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
}

Нет, вы хотите посмотреть на isset или пусто.

Чтобы проверить, имеет ли переменная значение, используйте:

empty($var);

Если он "пуст", он вернет TRUE, а если нет - FALSE. Вот что считается пустым:

  • "" (пустая строка)
  • 0 (0 как целое число)
  • 0.0 (0 как число с плавающей запятой)
  • "0" (0 как строка)
  • НОЛЬ
  • ЛОЖНЫЙ
  • array () (пустой массив)
  • $ Var; (объявленная переменная, но без значения)

Для получения дополнительной информации см.: http://php.net/manual/en/function.empty.php

Другие вопросы по тегам