我在echo语句中有这样的条件,如何调整它以使其正常工作:
echo "<option value="http://localhost/myproject/index.php?if(empty($_GET['view'])){echo "view=main-content";}else{$view=basename($_GET['view']);echo "view=".$view;}"></option>";
非常感谢
答案 0 :(得分:1)
我注意到您使用了两次view
,因此,如果您的条件输入else
,那么您的最终网址将是:?view=whateverview=whatever2
,这显然是错误的。
$view = (empty($_GET['view']) ? 'main-content' : basename($_GET['view']));
echo "<option value='http://localhost/myproject/index.php?view=" . $view . "'></option>";
如果您想在网址中添加更多参数,则需要使用&
。
答案 1 :(得分:0)
这是你的预期输出吗?
$d = "<option value='http://localhost/myproject/index.php?";
if(empty($_GET['view']))
{
$d .= "view=main-content";
}
else
{
$view=basename($_GET['view']);
$d .="view=".$view;
};
$d .="'>Testing</option>";
echo "<select>". $d."</select>";
答案 2 :(得分:0)
您可以将其传递给变量,并将其与其余的echo语句连接。
if(empty($_GET['view'])){
$res = 'main-content';
} else {
$res = basename($_GET['view']);
}
echo '<option value="http://localhost/myproject/index.php?view=' . $res . '"></option>';
答案 3 :(得分:0)
由于没有其他人发布它:
echo '<option value="http://localhost/myproject/index.php?view='
. (empty($_GET['view']) ? 'main-content' : basename($_GET['view'])
. '"></option>';