Когда я получаю vars от url, я делаю строку. Но строка должна быть другой, если var
существует или нет на url. Вот пример:
У меня два URL:
www.domain.com/list.php?cli=paris&resp=James&type=emp
www.domain.com/list.php?type=emp
Я могу получить vars от первого url с $_GET
$var = "HAVING ".$_GET['cli']." AND ".$_GET['resp']." AND ".$_GET['type'];
а также
$var = "HAVING paris and James and emp"
но на втором url у меня есть $var="HAVING AND AND emp"
потому что первый и второй vars пустые.
Я могу использовать несколько условий для всех vars (url может иметь 5 или 6 vars), но я думаю, что есть лучшее решение.
благодаря
Это должно сработать для вас:
(Просто используйте implode()
и вам не нужно ничего проверять)
echo $var = "HAVING " . implode(" AND ", $_GET);
Вывод:
HAVING paris AND James AND emp
HAVING emp
РЕДАКТИРОВАТЬ:
Из вашего комментария это должно сработать для вас:
<?php
$str = "HAVING ";
$sep = "";
foreach($_GET as $k => $v) {
$str .= "$sep $k='$v'";
$sep = " AND ";
}
echo $str;
?>
Вывод:
HAVING cli='paris' AND resp='James' AND type='emp'
HAVING type='emp'
использование isset()
..
например
$var1 = '';
if(isset($_GET['your_var']))
{
$var1 = $_GET['your_var']
//do your stuff here...
}