Вопрос троичного оператора - PullRequest
1 голос
/ 11 августа 2011

Может ли кто-нибудь дать мне пример того, как использовать троичный оператор PHP, который будет проверять переменную с помощью $ _GET (который может быть определен в URL), если он не находится в URL, то проверьте, была ли установлена ​​переменная вдругой файл PHP.Если он не был установлен в URL или другом файле PHP, то я хочу, чтобы он равнялся «по умолчанию».

Ответы [ 3 ]

3 голосов
/ 11 августа 2011
$myVar = isset($_GET["someVar"]) ? $_GET["someVar"] : (isset($someVar) ? $someVar : "default");
3 голосов
/ 11 августа 2011
$value = isset($_GET['somevar']) ? $_GET['var'] : $default_value;

В самых последних версиях PHP существует сокращенная версия этого:

$ value = isset ($ _ GET ['somevar'])?: $ Default_value; (не то же самое, что и в первой версии)

Вы можете использовать $GLOBALS['nameofvar'], чтобы увидеть, была ли определенная переменная PHP также определена, хотя это будет проблематично, если вы выполняете проверку внутри функции.

2 голосов
/ 11 августа 2011

Вы ищете что-то вроде этого:

if(isset($_GET["MyVar"]))
{
    $newVar = $_GET["MyVar"];
}
else if(isset($myVar))
{
    $newVar = $myVar;
}
else
{
    $newVar = "default";
}

или

$newVar = isset($_GET["MyVar"]) ? $_GET["MyVar"] : (isset($myVar) ? $myVar : "default");
...