Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我可以声明一个变量并稍后赋值吗?_Php_Variables - Fatal编程技术网

Php 我可以声明一个变量并稍后赋值吗?

Php 我可以声明一个变量并稍后赋值吗?,php,variables,Php,Variables,我可以声明一个变量并稍后赋值吗 这是可行的吗 $redirect = "recording.php?album=$albumid"; $albumid = 4; 不,你不能按你的要求去做。不过,还有其他选择 $redirect = "recording.php?album="; $albumid = 4; $redirect .= $albumid; // use your $redirect var here... 这就足够了吗?否定。。。值必须在使用前分配给变量,否则它将返回n

我可以声明一个变量并稍后赋值吗

这是可行的吗

$redirect = "recording.php?album=$albumid";


$albumid = 4;

不,你不能按你的要求去做。不过,还有其他选择

$redirect = "recording.php?album=";

$albumid = 4;

$redirect .= $albumid;

// use your $redirect var here...

这就足够了吗?

否定。。。值必须在使用前分配给变量,否则它将返回null。

不,您不能这样做。 相反,只需将相册id附加到重定向url即可

        $redirect = "recording.php?album=";
        $albumid = 4;
        $redirect .= $albumid;

快乐编码:):)

您可以使用此代码

$albumid = "";
$redirect = "recording.php?album=$albumid";
$albumid = 4;
实际上,当您使用$redirect=“recording.php?album=$albumid”;那个时候,未定义的变量名会出错。因此,首先将该变量设置为null。。然后根据需要更改值


这对您有帮助吗?

如果您想要更大的灵活性,那么您可以将字符串封装在如下函数中:

function getRedirect($albumid)
{
    return "recording.php?album=$albumid";
}
那么就这样称呼它:

$redirect = getRedirect(4);

如果您想要一个常量,另一个选项是使用某种占位符,如
recording.php?album={0}
,然后执行
$newString=str_replace(“{0},$albumid,$redirect”)。这可能是更理想的,所以您可以在字符串中有多个变量,如{ 0 }和{ 1 },从而能够更新字符串中间的值,而不仅仅是字符串的结尾。但是,这肯定不能达到SO正在寻找的值,也就是说,这不会动态地将值4应用到重定向。变量$redirect的值为“recording.php?album=”变量$albumid的值为4。将分配后$albumid的值更改为$redirect不会改变$redirect。好的,现在我明白了。可以使用Ajax或java脚本。或者,正如@傻瓜塞思所建议的,函数可以用于此。我认为函数可以工作,但太过分了,我会遵循亚当和阿迪蒂的答案。@Mr.Alien答案,无论长还是短,都在答案部分,而不是评论部分