-4

我需要插入

<?php if (isset($_GET["marke"])) { echo "?marke="; echo $_GET["marke"]; echo "&farbe=gelb"; } else { echo "?farbe=gelb"; } ?>

成一个变量。

但是当然

<?php
$var = if (isset($_GET["marke"])) { echo "?marke="; echo $_GET["marke"]; echo "&farbe=gelb"; } else { echo "?farbe=gelb"; }
?>

 <?php
echo $var;
?>

不工作^^正确的代码是什么样的?

4

4 回答 4

1

您必须初始化 var 并连接字符串:

$var = "?";
if (isset($_GET["marke"])) {
    $var .= "marke=" . $_GET["marke"] . "&";
}
$var .= "farbe=gelb";

进而:

echo $var;
于 2013-09-19T19:23:28.333 回答
0

你不需要使用函数;只需使用三元运算符

$var = (isset($_GET["marke"])) ? "?marke=" . $_GET["marke"] . "&farbe=gelb" : "?farbe=gelb";
于 2013-09-19T19:15:31.817 回答
0

如果您只是尝试在设置了 GET 的情况下将数据设置为变量,并且如果未设置为其他值,请使用以下命令:

if (isset($_GET["marke"])) 
  {
    $var = "?marke=".$_GET['marke']."&farbe=gelb";
  }
else
  {
    $var = "?farbe=gelb";
  }

但请记住在将 GET 数据与 mysql 等一起使用之前验证它,以确保它是您允许的。

于 2013-09-19T19:19:54.287 回答
-2

假设您想将输出保存到变量中,然后在再次输出变量之前执行一些操作,您可以执行以下操作:

<?php
$var = if (isset($_GET["marke"])) { echo "?marke="; echo $_GET["marke"]; echo "&farbe=gelb"; } else { echo "?farbe=gelb"; 

echo <<<_END
<html>
//write something here
</html>
_END;

echo $var;
?>

希望有帮助!

于 2013-09-19T19:22:27.490 回答