动态位置标头PHP

时间:2012-10-23 17:27:10

标签: php

  

可能重复:
  Why is PHP not replacing the variable in string?

我想让我的PHP重定向标头动态化。目前我有:

header('Location:message.php?ref=conversation&conv=$conv_id')

但是将用户重定向到:

doamin.com/message.php?ref=conversation&conv="$conv_id"

我做错了什么?

5 个答案:

答案 0 :(得分:3)

您将变量放在单引号中,更改为双引号。

答案 1 :(得分:1)

将其更改为:

header("Location:message.php?ref=conversation&conv=$conv_id");

或者这个:

header('Location:message.php?ref=conversation&conv=' . $conv_id);

(我更喜欢后者,但这只是个人的事情。)

问题在于,如果使用双引号,它会解析字符串中的变量,如果使用单引号则不会解析变量。

答案 2 :(得分:1)

单引号中的任何内容都表现得像字符串

所以

header('Location:message.php?ref=conversation&conv=$conv_id') will not work 

应该是

header("Location:message.php?ref=conversation&conv=$conv_id")

答案 3 :(得分:0)

不多,你应该把var传递给字符串

header("Location:message.php?ref=conversation&conv=" . $conv_id)

答案 4 :(得分:0)

您可以执行以下两项之一:

header("Location:message.php?ref=conversation&conv=$conv_id");

OR

header('Location:message.php?ref=conversation&conv='.$conv_id);

您不应将变量放在单引号'中。将它放在双"引号中,将起作用