1

我知道这似乎是一个愚蠢的问题,但我收到了 synatx 错误var imagename = ;。在下面的代码中。

 var imagename = <?php if (isset($_SESSION['imagename'])) echo json_encode($_SESSION['imagename']); ?>;

var imagename 是一个 javascript 变量,但为什么会出现此错误?是不是因为;是在错误的地方还是我搞砸了;还是我添加了很多;。我似乎无法弄清楚。

谢谢

4

3 回答 3

2

您没有 else 子句,因此如果未设置该会话变量,您最终会生成空分配。

var imagename = <?php if (isset($_SESSION['imagename'])) { echo json_encode($_SESSION['imagename']); } else { echo "''"; } ?>;
于 2012-04-21T23:00:40.500 回答
2

也许您正在寻找这样的东西:

var imagename = <?php echo json_encode(isset($_SESSION['imagename']) ? $_SESSION['imagename'] : null); ?>

有关三元运算符如何工作的更多信息,请参阅http://php.net/ternary#language.operators.comparison.ternary

于 2012-04-21T23:02:48.657 回答
0

错误可能在$_SESSION['imagename']不存在时发生。当发生这种情况时,您应该添加一个 else 子句。

于 2012-04-21T23:01:00.467 回答